其他知识点参考Python 简介 - 菜鸟教程
1.字符串格式化
一般最简单的是可以通过加号来进行拼接,但是加号不太高效。所以可以通过占位的形式,完成字符串和变量的快速拼接。
1.1 %s将内容转换成字符串,放入占位位置
%表示:我要占位
s表示:将变量变成字符串放入占位的地方
综合起来的意思就是:我要先占一个位置,等一会有一个变量过来,我把它变成字符串放到占位的位置
①字符串类型的拼接
name="我要吃饭"
message="%s my son!" %name
print(message)
#输出:我要吃饭 my son!
②变量类型的拼接。多个变量占位,变量需要用括号括起来,并且按照占位的顺序填入
class_num=57
avg_salary=16781
message="今年一共接收了%s人,每个人月均工资大概在%s左右"%(class_num,avg_salary)
print(message)
#输出:今年一共接收了57人,每个人月均工资大概在16781左右
1.2 %d将内容转换成整数,放入占位位置
name1="朱莉"
sex="女"
age=22
message="我是:%s,性别:%s,今年%d岁"%(name1,sex,age)
print(message)
#输出:我是:朱莉,性别:女,今年22岁
1.3 %f将内容转换成浮点型,放入占位位置
name1="朱莉"
sex="女"
age=22
height=165.5
message="我是:%s,性别:%s,今年%d岁,身高%f厘米"%(name1,sex,age,height)
print(message)
#输出:我是:朱莉,性别:女,今年22岁,身高165.500000厘米
1.4数字精度控制
可以使用辅助符号 m.n来控制数据的宽度和精度。
m:控制宽度,要求是数字(很少使用),设置的宽度小于数字自身,不生效
n:控制小数点精度,要求是数字,会进行小数的四舍五入
二者均可省略。
例如:
%5d:表示将整数的宽度控制在5位,如数字11,被设置为宽度为5d,就会变成:[空格][空格][空格]11,用三个空格补足宽度。
%5.2f:表示将宽度控制为5,将小数点精度设置为2
小数点和小数部分也算如宽度计算。
如,对11.345设置了%7.2f后,结果是:[空格][空格]11.35。2个空格补足宽度,小数部分限制2为精度后,四舍五入.35.
%.2f:表示不限制宽度,只设置小数点精度为2,如11,345设置%.2f后,结果是11.35
num1=11
num2=11.123
print("数字11,宽度限制为5,结果%5d"%num1)
print("数字11,宽度限制为1,结果为%d"%num1)
print("数字11.123,宽度限制为7,小数精度2,结果为%7.2f"%num2)
print("数字11.123,不限制宽度,小数精度2,结果为%.2f"%num2)
#输出
"""
数字11,宽度限制为5,结果 11
数字11,宽度限制为1,结果为11
数字11.123,宽度限制为7,小数精度2,结果为 11.12
数字11.123,不限制宽度,小数精度2,结果为11.12
"""
1.5 快速写法
语法:f"内容{变量}"的格式来快速格式化。不做精度控制,原样输出。
格式:f"{占位符}"
name2="克拉拉"
sex2="男"
age2=24
height=181.7
print(f"我叫{name2},性别{sex2},年龄{age2}岁,身高{height}厘米")
#输出:我叫克拉拉,性别男,年龄24岁,身高181.7厘米
1.5表达式的格式化
在无需使用变量进行数据存储的时候,可以直接格式化表达式,简化代码
主要有两种:
①f"{表达式}"
②“%s\%d\%f"%(表达式,表达式,表达式)
print(f"1*1的结果是:{1*2}")
print(f"1*1的结果是:%d"%(3*4))
#输出
#1*1的结果是:2
#1*1的结果是:12
2.数据输入input语句
input 语句是获取键盘的输入信息。input默认接受的类型都是字符串,不管输入什么,都会默认成为字符串。如果想要得到数字或者其它类类型的数据,需要执行转换。
可以使用input(使用信息),用以在使用者输入内容之前显示提示信息。
name=input()
user_type="SSSSVIP"
print("您好:%s,您是尊贵的%s"%(name,user_type))
#运行的时候需要手动输入
#猪猪侠
#您好:猪猪侠,您是尊贵的SSSSVIP
3.输出不换行和数值对齐
(1)在print语句中,加上end=''就可以输出不换行了。
print("hello world",end=" ")
print("good morning",end=" ")
#hello world good morning
(2) 在print语句中加上\t,就可以使间隔字符对齐
print("hello\tworld")
print("good\tmorning")
#hello world
#good morning
(3) 在print语句中加上\n,实现语句换行
print("hello\nkugou")
#hello
#kugou
4.range语句
range语句是用来生成数字序列的。通常是与for循环语句场景一起使用。
(1)语法1:range(num)
获取一个从0开始,到num结束的数字序列(不含num本身)。例如range(5)取得的数据是:[0,1,2,3,4]
(2)语法2:range(num1,num2)
获得一个从num1开始,到num2结束的数字序列(不含有num2本身)。例如 range(5,10)取得的数据是:[5,6,7,8,9]
(3)语法3:range(num1,num2,step)
获得一个从num1开始,到num2结束的数字序列(不含有num2本身)。数字之间的步长,以step为准(step默认为1)。例如range(5,10,2)取得的数据是:[5,7,9]
5.continue和break
(1)continue关键字用于:中断本次循环,直接进入下一次循环。它可以用于for循环和while循环,效果是一致的。
应用场景:临时结束本次循环,进入到下一次循环。
for i in range(1,6):
print("语句1")
# continue
print("语句2")
#输出
"""
语句1
语句1
语句1
语句1
语句1
"""
#continue在此处就相当于删除了语句2的执行
(2)break关键字用于:直接结束循环。它可以用于for循环和while循环,效果是一致的。
for i in range(1,6):
print("语句1")
break
print("语句2")
#语句1
6.None类型
在python中,如果没有使用return语句返回数据,函数也是有返回值的。在python中有一个特殊的字面量:None,其类型是:<class 'NoneType'>。无返回值的函数,实际上就是返回了:None这个字面量,他表示空的,没有实际意义的意思。
def say_hi():
print("hello")
result=say_hi()
print(f"无返回值函数,返回的内容是:{result}")
print(f"无返回值函数,返回的类型是:{type(result)}")
#hello
#无返回值函数,返回的内容是:None
#无返回值函数,返回的类型是:<class 'NoneType'>
None应用场景:
①用在函数无返回值上
②用在if的判断上:
在if判断中,None等同于False
一般用于在函数中主动返回None,配合if判断做相关的处理
③用于无声明内容的变量上
定义变量,但暂时不需要变量有具体值,可以用None来代替
def check_age(age):
if age>18:
return "success"
else:
return None
result=check_age(19)
if not result:#这里就相当于if result ==None
print("faile")
7.global关键字
使用global关键字可以在函数内部声明变量为全局变量。
num1=100
def testA():
print(num1)
def testB():
global num1 #在没有加上global关键字的时候,这里的num1是属于局部变量,和外部没有任何关系。但
#是在加上global之后,修改函数内部的变量,也会影响外部
num1=200
print(