目录
一、python基础语法
1、字面量
在代码中,被写下来的固定的值,就是字面量
常见的值类型:
- 数字:
- 整数(int):如10,-10
- 浮点数(float):如13.14,-13.14
- 复数(complex):如4+3j
- 布尔(bool):如true,false
- 字符串(String):由任意的字符组成,需要用双引号包围
- 列表(List):有序的可变序列
- 元组(Tuple):有序的不可变序列
- 集合(Set):元序不重复集合
- 字典(Dictionary):无序的Key-Value集合
2、注释
单行注释:以#号开头,快捷键为ctrl + /
多行注释:用三个引号包围,引号要用英文输入法
3、变量
变量是在程序运行时,能储存计算结果或者能表示值的抽象概念。就是在程序运行时,记录数据用的
定义变量的格式:变量名 = 变量值
4、数据类型
执行 type(被查看类型的数据) 即可,可以查看变量存储数据的数据类型
变量本身无类型,变量存储的数据是有类型的
5、数据类型转换
int(x):将x转换为一个整数
float(x):将x转换为一个浮点数
str(x):将x转换为字符串
注意:中文无法转换成整数类型,浮点数转换成整数会丧失精度,比如13.14转换为整数为13
6、标识符
在python中,会给变量、方法、类起名字,这些统一称为标识符
标识符是用户编程时所使用的一系列名字,用于给变量、类、方法等命名
a、标识符命名规则:
- 内容限定:
- 只允许出现英文、中文、数字、下划线(_)这四类元素,其余任何内容都不被允许
- 不推荐使用中文
- 数字不能用在开头
- 大小写敏感:tom和Tom在python中是两个变量,要区分大小写
- 不可使用关键字:不能使用true、false、continue、break、class、def、del、elif、except、finally、for、from、if、import、lambda、not、pass等
b、命名规范
- 变量命名规范:
- 见名知意:看到名字就知道变量的作用,简洁明了
- 下划线命名法:多个单词用下划线分割,如firtst_num
- 英文字母全小写:变量Tom最好写成tom
7、运算符
- 算数运算符
- +:加
- -:减
- *:乘
- /:除
- //:取整除,如11//2 = 5
- %:取余,如9 % 2 = 1
- **:指数,如 3 ** 3 = 27
- 赋值运算符:
- =,将右边的结果赋值给左边的变量
- 复合赋值运算符:
- +=:加法赋值运算符,如c += a等价于 c = c + a
- -=:减法赋值运算符,如c -= a等价于 c = c - a
- *=:乘法赋值运算符,如c *= a等价于 c = c * a
- /=:除法赋值运算符,如c /= a等价于 c = c / a
- %=:取模赋值运算符,如c %= a等价于 c = c % a
- **=:幂赋值运算符,如c **= a等价于 c = c ** a
- //=:取整除赋值运算符,如c //= a等价于 c = c // a
8、字符串拓展
a、三种定义方式
- 单引号定义法:name = ‘我是python程序员’
- 双引号定义法:name = “我是python程序员”
- 三引号定义法:name = “”“我是python程序员”“”
三引号定义法中,字符串无变量接收,就是多行注释,有变量接收就是变量
b、字符串的拼接
字符串之间用 + 号拼接,此方式只支持字符串之间的拼接,如:“这是字符串第一段” + “这是字符串第二段”,无法支持字符串与数字的拼接,如:“这是无法拼接的案例” + 123456
text_str = "字符串第一段" + "字符串第二段" 这是正确写法
text_str = "这是无法拼接的案例" + 123456 这是错误写法
c、字符串格式化
%s:将内容转成字符串,放入占位位置
%d:将内容转成整数,放入占位位置
%f:将内容转成浮点数,放入占位位置
num1 = 18
num2 = 123456
#单个占位符的写法
message1 = "我是程序员,我今年%s岁" % num1
#多个占位符的写法
message2 = "我是程序员,我今年%s岁,我的电话号码为:%s" % (num1,num2)
d、格式化的精度控制
可以使用辅助符号"m.n"控制宽度和精度
- m:控制宽度,要求是数字,如果宽度小于数字本身,则不生效
- n:控制精度,要求是数字,会进行小数的四舍五入
- %5d:将整数宽度控制在5位。如数字11,被设置成%5d,则会变成[空格][空格][空格]11
- %7.2f:将总宽度控制为7位,小数点精度设置为2。如11.345,被设置成%7.2f,会变成[空格][空格]11.35,先2个空格补足宽度,再小数部分限制2位精度并四舍五入
- %.2f:不限制宽度,只设置小数点精度为2。如11.345设置%.2f后,结果是11.35
num1 = 11
num2 = 11.345
print("num1的值是%s,将其宽度限制为5结果是%5d" % (num1,num1))
print("num2的值是%s,将其宽度限制为7,小数点限制2位,结果是%7.2f" % (num2,num2))
print("num2的值是%s,将其不限制宽度,只设置小数点精度2位,结果是%.2f" % (num2,num2))
打印结果为:
num1的值是11,将其宽度限制为5结果是 11
num2的值是11.345,将其宽度限制为7,小数点限制2位,结果是 11.35
num2的值是11.345,将其不限制宽度,只设置小数点精度2位,结果是11.35
e、快速字符串格式化
通过语法:f"内容{变量}"的格式来快速格式化
这种方式就不会限制数字的宽度和精度
name = "程序员"
age = 18
phone = 123456789
print(f"我是{name},我今年{age}岁,我的电话号码为{phone}")
f、对表达式进行格式化
表达式:一条具有明确执行结果的代码语句
print("结果为:%1d" % (1 * 1.1)) 结果为1
print(f"{1 * 1.1}") 结果为1.1
9、数据输入
input(“前提提示信息”):获取键盘输入的内容
name = input("你是谁?")
print("你好,我是:%s" % name)
输出为:
你是谁?程序员
你好,我是:程序员
10、print()的用法
换行输出:print(“这是输出内容”)
不换行输出:print(“这是不换行输出内容”)
print("hello")
print("world")
输出内容为:
hello
world
print("hello",end='')
print("world",end='')
输出内容为:
helloworld