新手学Python要打好哪些基础?从软件安装到全面基础讲解,就它了!
Posted 退休的龙叔
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了新手学Python要打好哪些基础?从软件安装到全面基础讲解,就它了!相关的知识,希望对你有一定的参考价值。
最近收到粉丝们的反馈,说自己学了一个月还没学完Python基础,我是当时就惊呆了,真的,Python基础什么时候变得如此高深莫测了?
结果我去看了一下,着实“有趣”,东扯西扯硬是把几十节课扯成了两三百节课,而且还讲了一些新手根本用不到的东西,接近第300节的时候还没讲完字符串…
我就不在这点名了,反正给我的感觉就是:从入门到入土,这谁学得完啊?
其实我的博文当中也有Python基础的教学文章,最近又根据粉丝的反馈去做了新的调整,删繁就简,直接给大家上纯干的Python基础教学,希望大家的学习不再做无用功!
今日内容预览
文章目录
一、软件安装
新手学Python我建议装一下Python和Pycharm,在以后写代码的时候会经常用到这两款软件,这两款软件都可以在官网下载,如果你不想去官网下载,我这边也有下好的安装包,自取之后按照安装流程开始即可。
软件包下载链接:https://pan.baidu.com/s/1BtnMGsfYNFIkmJ26wuGjCw
提取码:al6e
1.Python的安装
Python的安装可以去官网直接下载,由于是国外的网站,可能响应和下载速度都会有点慢,如果你不着急就等着就行,想快一点的话用迅雷来下载就很快。
- 下载Python
下载地址是 ttps://www.python.org/downloads/ ,也可以从官网点Downloads 进入下载页面,选择你的电脑对应的版本,我的是Windows电脑,所以就直接点击 Windows 。
Python目前是出到了3.11版本,你可以看到有很多版本的选择可下载,我用的是3.9.6这个版本,然后根据电脑挑选型号,我的电脑是64位的,所以就下载64位的软件,这里提示大家一下,我个人是不太建议安装太新的版本,因为有可能里面有一些库或者兼容性问题,导致运行的时候会报错。
- 安装Python
双击下载好的文件,进入安装界面。
选择自定义安装,把两个选择都勾选就能将Python安装到PATH中。
这个界面不变动,直接点 Next 。
选择一个你要安装的路径,不然它会把你装到C盘,我把它安装到了D盘,然后点击 Install 。
安装完成,点击 Close 。
- Python测试
测试一下你的Python是否安装成功,WIN + R 键调出命令窗口,输入 cmd 。
在黑窗口输入 Python ,然后回车,如果提示Python 3.9.6 等信息就说明已经安装成功了,如果没有提示,那就回去看看哪个环境你出错了。
2.Pycharm的安装
Pycharm官网下载,选择一下系统,我是Windows系统所以默认不变,然后下载社区版的就可以了,等你变强大以后再用专业版的。
下载好之后,双击开始安装。
点击Next 。
自定义安装路径,建议装在C盘之外的其他盘,点击 Next 。
全部都勾选。
到了这里之后,默认即可,点击 Install 开始安装。
等待安装按成后,点击finish就装好了。
3.你的第一行代码
万事俱备,接下来我们开始写我们的第一行代码,鼎鼎大名的 hello world 。
打开Pycharm,点击New Project 创建新项目,以后新建项目都可以这么操作,中间的Open 是打开项目,如果你有写好的项目就可以从这里打开。
接下就是设置一下项目的存在位置,如果你的安装Pycharm的时候是按照我的步骤来的,Base interpreter 那里会自动检测出来Python,可以不做改到,直接点击左下角的Create 创建就可以了。
然后点击左边的。
进入页面会弹出一个弹框,点击Close关闭就行。
前面我们创建的是项目,是一个文件夹,来存放源码的,这里我们开始创建代码源文件。(我的电脑之前有过一些项目,所以底下有很多文件夹,可能跟你们不太一样。)
点击在创建好的项目python_learn,邮件弹出选项,选择New 来新建,选择Python File ,即创建Python源文件。
然后会提示你给你的文件取个名字,然后敲一下回车就完成了代码源文件的创建了。
开始写代码,这里需要用到的1个最常用的函数print() ,它是用来专门输出内容的,函数有它的语法,只要遵循语法来写代码,软件才会知道你要干什么。
print的语法如下,默认自带换行。
print(要输出的内容)
接下来我们就是要输出我们第一行代码了,hello world 是1串字符串,需要加上" "才是正确的格式,不然会报错,关于字符串在后面我们会详细来讲,这里你只要知道得按照这个格式写代码才能达到我们想要的结果。
print("hello world")
写完代码之后需要运行才出结果,可以右键弹出选项框,选择 Run’learn_1’ 开始运行,Run是运行的意思,learn_1 是刚才我给这个源文件取的名字。
除了右键来运行,还可以直接用快捷键 Ctrl+Shift+F10,执行结果:
恭喜你,输出了你的第一行代码,正式开始Python之旅!
二、基础知识
在用Python写代码的之前,对Python的基础知识是必须要会的,不然你可能会寸步难行。基础知识包括输入输出、变量、数据类型、表达式、运算符这5个方面。
1.输入输出
Python有很多函数,后面我们会细讲,但这里先将两个最基本的函数:输入和输出。
输出函数print(),在前面我们已经用过了,语法就是:
print(要输出的内容)
输入函数是 input(),功能是接收用户输入的内容,语法是:
input(输出的内容)
举例:接收用户输入的密码并打印
n = input("请输入密码:") #把输入内容赋给n,用 n 接收一下
print(n) #打印n
在Python里,“#” 表示注释,“#”后面的东西不会被执行。代码运行之后首先出现了“请输入密码:”,然后随意输入,比如输入123,执行结果:
提示信息
请输入密码:123
123
成功接收用户输入的内容并打印出来。
2.变量
变量就是一个名字,需要先赋值在使用,变量要符合标识符(名字)的命名规范,这是硬性要求,标识符相当于名字,包括变量名、函数名、类名等等,
- 标识符的命名规范
- 合法的标识符:字母,数字(不能开头),下划线,py3可以用中文(不建议),py2不可以。
- 大小写敏感。
- 不能使用关键字和保留字。
关键字: if while for as import
保留字:input,print range
- 没有长度限制。
- 望文生义,看到名字就知道要表达的意思。
- 大小写:
1. 包名:全小写,例如 time ; 2. 类名:每个单词的首字母大写,其他的小写,简称大驼峰命名,例如 HelloWorld ; 3. 变量名/函数名:第一个单词的首字母小写,后面的单词的首字母大写,简称小驼峰命名,例如 helloWorld ; 4. 常量:全大写,例如 HELLO 。
- 其他命名方式,比如 hello_world 。
3.数据类型
- 数据类型分类
数据类型可分为以下6类:
(1) 整型:整数,英文名 int ,例如 5 的数据类型就是整型。
(2) 浮点型:小数,英文名 float ,例如 0.5 就是1个浮点型数据。
科学计数法,e表示乘以10几次方,例如 b=1e10 表示1*10的10次方。
(3) 字符串:英文str
表现形式有4种:'xs' 、 "xs" 、 """xsxs""" 、 ''''xxx'''
三引号有个特殊功能,表示注释,跟 # 一样的功能,例如:
"""
xsx
xs
这里面的都是注释内容
"""
(4)布尔类型:英文bool,True为真,False为假;1表示真,0表示假。
(5)None 是一个单独的数据类型。
(6)列表、元组、字典、集合也是常见的数据类型。
- 类型转换
在写代码的时候我们经常需要将不同的数据类型进行转换,主要的数据类型转换方法如下:
(1) 字符串转整型
方法是 int(str) ,字符串必须是数字,例如:
user = int('304200780')
print(user)
执行结果:
304200780
(2)浮点型转整型
方法是 int(float) ,例如:
f = 20.1
ff = int(f) #直接抹去小数部分
print(ff)
运行结果:
20
(3)字符串转浮点型
方法是 float(str) ,字符串必须是数字和,例如:
f = "203.4"
ff = float(f)
print(ff)
运行结果:
203.4
(4)整型转浮点型
方法是 float(int) ,例如:
f = 30
ff = float(f) # 30.0
print(ff)
运行结果:
30.0
(5)浮点型转字符串
方法是 str(float) ,例如:
f = 30.5
ff = str(f)
print(type(ff).__name__) #type()是获取数据类型函数
这里先不管print()和type()函数的嵌套,后面会将,只要知道它们是在输出 ff 的数据类型,运行结果:
str
(6)整型转字符串
方法是 str(int) ,例如:
f = 30
ff = str(f)
print(type(ff).__name__) #type()是获取数据类型函数
- 获取类型信息
常用的获取数据类型信息的函数有type()和isinstance()两个。
(1)type()
语法是 type(对象) ,返回的是对象的类型,前面我们也有用过,但是它是在内部返回的,如果你不输出它你是看不到的,所以经常会和输出函数print()嵌套使用。
例子:获取数据类型并输出。
f = 30
print(type(f))
运行结果:
<class 'int'>
class的意思是种类,可以看出 f 是 int 型的数据。
(2)isinstance()
isinstance() 常用来判断数据类型,它返回的是布尔值(True或False),语法是 isinstance(对象,class) 。
例子:判断30.5是不是整型。
f = 30.5
n = isinstance(f,int) #用n来接收一下结果
print(n)
运行结果:
False
4.表达式
在Python当中,表达式是由数字、算符、数字分组符号(括号)、变量等对象的组合叫做表达式,表达式均有固定字面值,例如 “10+20”这个表达式的值为30,表达式 “10>30” 的值为 False 。
5.运算符
运算符可以分为很多4类。
(1)一般运算符
+,-,*,/(真除法),//(地板除,舍去小数部分),%(取余数),**(幂运算)
(2) 赋值运算符
常用赋值运算符是 = ,等号右边的值赋值等号左边
增强赋值运算符:+=,-=,*=,/=,%=,**=
例子:
a = 30
a+=10
print(a)
执行结果:
40
连续赋值:a=b=c=d=10
(3)布尔运算法
== (等于),!=(不等于) >= <= > <
(4) 逻辑运算符
主要有not、and和or三类,又称非、与和或
and:前后都为真则为真
or:有一个为真则为真
not:非真,非假
例子:
a = 10
b = 20
c = 30
d = 40
n1 = a > b and a < c #a>b为假,a<c为真,假与真为假
n2 = not a < c #a<c为真,非真则为假
n3 = a > b or a < c #a>b为假,a<c为真,假或真为真
print(n1,n2,n3)
执行结果:
False False True
三、流程控制
流程控制常用的是条件分支流程的if/else语句和循环控制的while语句。
1.条件分支流程
当达到某种条件的时候才会触发的代码。
(1)语法1
if 布尔表达式: #如果为真则执行内部的代码块
代码块
布尔表达式的结果只有两个,要么真,要么假,如果是真的,那么就执行if语句里面的代码块,否则就跳过不执行。
例子:
a = 10
b = 20
if a < b:
print("真的")
if a > b:
print("假的")
执行结果:
真的
从这里可以看出第一个if语句里面的布尔表达式(a<b)为真,所以执行了里面的代码块print(“真的”),而第二个if语句里面的布尔表达式(a>b)是假的,所以里面的代码块没有被执行,所以不输出“假的”两字。
(2)语法2
常用的if/else语句,语法如下:
if 布尔表达式:
代码块
else:
代码块
判断的逻辑是如果布尔表达式为真,则执行if内部的代码块,如果为假则执行else内部的代码。
例子:
a = 10
b = 20
if a > b:
a = 30
print(a)
else:
print(1111)
执行结果:
1111
(3)语法3
if 布尔表达式1:
代码块
elif 布尔表达式2:
代码块
elif 布尔表达式3:
代码块
....
else:
代码块
逻辑是如果布尔表达式为真,则执行if内部的代码块,如果为假则执行else内部的代码,这个语法适用于多个连续条件判断。
例子:
s = int(input("请输入分数:"))
if 80 >= s >= 60:
print("及格")
elif 80 < s <= 90:
print("优秀")
elif 90 < s <= 100:
print("非常优秀")
else:
print("不及格")
随意输入100以内的数字,不同区间内的数字结果是不一样的,例如92,执行结果为:
请输入分数:92
非常优秀
10
(4)语法4
这里可以将前面所讲的if/elif/else进行嵌套使用,来达到我们想要的目的。
例子
s = int(input("请输入分数:"))
if 80 >= s >= 60:
print("及格")
elif 80 < s <= 90:
print("优秀")
elif 90 < s <= 100:
print("非常优秀")
else:
print("不及格")
if s > 50:
print("你的分数在60分左右")
else:
print("你的分数低于50分")
随意输入数字,比如说55,执行结果:
请输入分数:55
不及格
你的分数在60分左右
2.循环流程
在前面我们讲过的流程控制语句的功能还是比较有限,比如说只能执行1次,要执行多次就得多写几个,有点麻烦,所以我们需要学习循环流程里面的循环语句,它的作用就是重复运行某些代码。
(1)while循环
语法:
while 布尔表达式:
代码块
只要条件(布尔表达式)为真就执行里面的代码块。
举例:
while 4 < 5:
s = int(input("请输入分数:"))
if 80 >= s >= 60:
print("及格")
elif 80 < s <= 90:
print("优秀")
elif 90 < s <= 100:
print("非常优秀")
else:
print("不及格")
if s > 50:
print("你的分数在60分左右")
else:
print("你的分数低于50分")
运行之后可以多次输入分数,并且永不停息:
请输入分数:56
不及格
你的分数在60分左右
请输入分数:70
及格
请输入分数:
当然这里有1个弊端,代码执行后陷入了死循环,while里面的代码被一直执行,因为4<5永远为真。
所以这里我们可以改善一下代码,不让它永远执行,让它循环执行几次就可以了,这里可以用个变量来作为条件判断,把4<5改成a<5,同时让在while里面实现自加的功能,在while里面代码每执行1次,执行到它那行的时候它加1,这样执行2次while就会跳出来。
a = 3
while a < 5:
s = int(input("请输入分数:"))
if 80 >= s >= 60:
print("及格")
elif 80 < s <= 90:
print("优秀")
elif 90 < s <= 100:
print("非常优秀")
else:
print("不及格")
if s > 50:
print("你的分数在60分左右")
else:
print("你的分数低于50分")
a += 1
print(a)
print("while执行结束了")
执行结果:
请输入分数:55
不及格
你的分数在60分左右
请输入分数:65
及格
5
while执行结束了
这里我再给大家举个例子来理解while循环的运用。比如说输入一个整数并计算各个位和,例如输入321,那么各个位之和则为6。
# 请输入一个整数,并计算各个位和 如:321=6
n = int(input("请输入一个整数:")) # 将字符串转为整型
# sums累加器:m=10 m=10+5
sums = 0
while n != 0: # 32 #3
sums = sums + n % 10 # sums=1+2=3+3=6
n = n // 10 # 32
print(sums)
我输入的2345,执行结果:
请输入一个整数:2345
14
(2)for循环
for循环和while循环都是循环语句,但不一样的点在于for循环是技术循环。
语法:
l=[3,2,1]
for 变量 in 可迭代对象:
代码块
例子:
l=[3,2,1]
for n in l:
print("1")
执行:
1
1
1
l是个列表,后面我们会讲,列表里面有3个元素,每执行一次for循环,列表里面的元素就会被赋值给n,直到列表里面没有了元素可赋值,则n就跳出了列表,此时的for循环就不成立了,不执行for里面的代码块。
(3)range
for循环经常会搭配range来使用,range是一个可迭代对象,range的语法如下:
range(start=0,stop,step=1)
start值的是开始下标。range序列里面的所有元素都有下标,第一个元素的下标是0,所以,默认是从0开始。
stop是结束位置。结束的位置下标为(元素个数-1),例如range里面有4个元素,那么结束下标最大为3,大于3则跳出range。
step是步长,如果step是2,那么每次会隔开1个元素,默认步长为1,即每个元素都会取到。
举例:
for i in range(8): #可以不写star和step,但结束位置一定要写的
print(i)
print("---------")
for i in range(10, 2, -2):
print(i)
执行结果:
0
1
2
3
4
5
6
7
---------
10
8
6
4
通过第一个for循环可以看出,range()的第一个元素的下标是从0开始,而不是从1开始;range()可以不写开始下标和步长,但一定得有结束位置;第二个for循环可以看出步长可以为负数,用于递减。
(4)continue
continue的作用是跳过本次循环,后面的循环继续执行,例如:
for i in range(1, 10):
if i == 5:
continue
print(i)
执行结果:
1
2
3
4
6
7
8
9
很明显,i等于5的时候,for循环就跳过去了,本次不再执行里面的代码,重新回到了新的循环。
同样的,还有终止所有循环的功能,就是break,和continue是一样的用法,但效果是不一样的,我这里就不做举例了,大家可以去试一下就知道了。
四、列表(List)
列表是可以存放任何数据,包括整型,浮点型,字符串,布尔型等等,是常用的数据类型之一。
1.列表的创建
列表也是一个可迭代对象
1. 普通形式
l = [1,2,3,4,5] ---整型列表
l = ["a","b","c"] ---字符串列表
l = [True,False,1>2,5<6]---布尔列表
2. 混合列表
l = [1,2.5,"a",True]
3. 空列表
l = []
- 从列表中如何获取数据(元素)
列表是有下标的,并且下标从0开始,元素是指列表中每个数据,例如l = [5,4,3,2,1] 里面有5个元素,但5的下标为0,1的下标为4。
1.获取当个数据(元素)
语法:
变量[下标] #获取下标所对应的值
例如获取l列表中下标为1的元素:
l = [1, 2, 3] # 下标/索引:0开始
print(l[1])
执行结果为:
2
2. 列表的遍历
列表的遍历是把列表里面的所有元素都获取1遍。
例如把[1,2,3,4,5]里面的元素都获取并输出一遍:
l = [1,2,3,4,5]
for i in l:
print(i, end=" ")
执行结果为:
1 2 3 4 5
3. 交换数据
对指定下标的元素进行数据交换。
例如把[1, 2, 3, 4, 5]里面的下标为第2和第3的元素进行数据交换:
l = [1, 2, 3, 4, 5] # 下标/索引:0开始
l[2], l[3] = l[3], l[2]
print(l)
执行结果:
[1, 2, 4, 3, 5]
2.添加元素
添加元素的方法常用的有以下3个:
统一用法是:
变量.函数
#例如 n. append(对象)
例子:讲列表[6,7]添加到另一个列表[1,2,3,4,5]中
l = [1, 2, 3, 4, 5]
l.extend([6, 7])
print(l)
执行结果:
[1, 2, 3, 4, 5, 6, 7]
3.删除元素
删除列表中的元素的常用方法主要有:
例子:删除列表[1, 2, 3, 4, 5]中4这个元素。
l = [1, 2, 3, 4, 5]
l.remove(4)
print(l)
执行结果为:
以上是关于新手学Python要打好哪些基础?从软件安装到全面基础讲解,就它了!的主要内容,如果未能解决你的问题,请参考以下文章