目录
变量
变量是代数的思想,是用来引用数据和功能占位的,具备动态性和可变性;
使用的变量必须声明,在声明变量时不需要指定变量类型。
1、变量声明
变量是缓存数据的标识符。
在Python中,变量是用赋值语句创建,用来绑定一个数据的有名对象
1.1 命名规则
- 变量只能包含字母、数字和下划线(_)
- 不能以数字开头
- 严格区分大小写
- 不能跟保留字相同

- 通常使用小写字母
- 多个单词时使用匈牙利命名法或驼峰法
- 简短、有意义,见名知意
- 纯大写字母一般表示常量
- 变量名用名词,函数名用谓词(动词+名词),如 phone / update_phone。
- 类名采用驼峰形式,如MyClass。
a a1 abc ABC a1b2c3d4
one_hundred count _a __ABC__
getNameAge get_name_age GetNameAge
# 小驼峰 匈牙利命名法 大驼峰
2、变量赋值
使用=对变量进行赋值
变量名 = 数字类型
变量名 = 表达式
变量名1 = 变量名2 = 变量名3 = 数字类型
变量名1, 变量名2, 变量名3 = 数字类型1, 数字类型2, 数字类型3
说明
- 第一次赋值是创建变量,同时绑定表达式执行结果
- 后续再赋值,会改变原有变量的绑定关系
- 变量本身没有类型,它绑定的对象才有类型
- 变量在使用之前,必须先进行赋值
- 变量赋值是一个自右向左的运算,将=右边表达式结果赋值给变量
(python的变量使用与C语言的变量使用不一样,在C语言中我们定义一个变量需在变量前规定它的数据类型,如:int、char、long、float等,但在Python中我们不需要这样定义)
3、变量类型
Python中的变量就是变量,它没有类型,我们所说的"类型"是变量指向的内存中对象的类型。我们可以使用type小函数用于获取一个变量或值的类型。
python中的数据类型:
-
字符串 str
-
数字
-
整数 int
-
浮点数 float
-
布尔数 bool
-
-
容器
-
列表 list
-
元组 tuple
-
字典 dict
-
集合 set / 固定集合 frozenset
-
字节串 bytes / 字节数组 bytearray
-
按照是否可修改划分分为:
-
不可变数据:Number(数字)、String(字符串)、Tuple(元组)
-
可变数据:List(列表)、Dictionary(字典)、Set(集合)
3.1 str(字符串类型)
用引号引起来的就是字符串,即便是空或者空格。
3.1.1 基本特征
-
引号引起来的:单引号、双引号、三引号(三个单引号或双引号);
-
三引号是字符串模板,所见即所得,可以包含单引号和双引号;
-
使用反斜杠\对字符进行转义
\' 代表单引号
\" 代表双引号
\n 代表换行符
\\ 代表反斜杠
\t 代表缩进
字符串前加r表示原始字符,不转义
r'c:\window\user\data'
3.1.2 运算
- 字符串连接用“+”
- 相邻的两个或多个字符串字面值会自动合并

- 字符串 * n ,字符串会重复n次输出,如:

3.1.3 访问
- 索引访问:从0开始,支持负数
'abc'[1] # 其中a的位置为0,b的位置为1,c的位置为3,[1]的意思是字符串中位置为1所以输出应该为b
- 支持切片:参考是start、end、step,下标从0开始,支持负数
str[[start]:[end]:[step]]
str[1:4:2] # 1对应start表示开始位置,4对应end表示结束位置,2对应step表示片段长度
str1 = '1234567'
str1[1:4:2] # 那么这个字符串的起始位置为2,终止位置为5,片段长度为2,那么最后代表了2 4
- 其中的数都可以为负数,输入正数的情况下我们0的位置是最左边为0依次递增,输入负数的情况下我们会把字符串的最后一位定为-1向左依次递减

当start为空,end为空,step为-1时会把字符串倒序输出

3.1.4 关系判断
in 和 not in:判断是否包含指定的字符串
str = r'c:\window\ruser\data'
print('window' in str)
3.1.5 格式化表达式
占位符:生成具有一定格式的字符串
格式化字符串 % 参数1
# 或者
格式化字符串 % (参数1, 参数2, 参数3)
| 转换符 | 含意 | 备注 |
|---|---|---|
|
| 有符号十进制整数。 | |
|
| 有符号十进制整数。 | |
|
| 有符号八进制数。 | (1) |
|
| 过时类型 -- 等价于 | |
|
| 有符号十六进制数(小写)。 | (2) |
|
| 有符号十六进制数(大写)。 | (2) |
|
| 浮点指数格式(小写)。 | (3) |
|
| 浮点指数格式(大写)。 | (3) |
|
| 浮点十进制格式。 | (3) |
|
| 浮点十进制格式。 | (3) |
|
| 浮点格式。 如果指数小于 -4 或不小于精度则使用小写指数格式,否则使用十进制格式。 | (4) |
|
| 浮点格式。 如果指数小于 -4 或不小于精度则使用大写指数格式,否则使用十进制格式。 | (4) |
|
| 单个字符(接受整数或单个字符的字符串)。 | |
|
| 字符串(使用 repr() 转换任何 Python 对象)。 | (5) |
|
| 字符串(使用 str() 转换任何 Python 对象)。 | (5) |
|
| 字符串(使用 ascii() 转换任何 Python 对象)。 | (5) |
|
| 不转换参数,在结果中输出一个 |
注释:
-
此替代形式会在第一个数码之前插入标示八进制数的前缀 (
'0o')。 -
此替代形式会在第一个数码之前插入
'0x'或'0X'前缀(取决于是使用'x'还是'X'格式)。 -
此替代形式总是会在结果中包含一个小数点,即使其后并没有数码。
小数点后的数码位数由精度决定,默认为 6。
-
此替代形式总是会在结果中包含一个小数点,末尾各位的零不会如其他情况下那样被移除。
小数点前后的有效数码位数由精度决定,默认为 6。
-
如果精度为
N,输出将截短为N个字符。
示例代码:
fmt = """
甲方:_____%s_____
乙方:_____%s_____
....... 金额:_%d__
"""
s = fmt % ("小王", 'csdn', 10000)
b = fmt % ("小红", 'csdn', 18000)
print(s)
运行结果:
甲方:_____小王_____
乙方:_____csdn_____
....... 金额:_10000__
f-string:格式化字符串以 f 开头,字符串中的表达式用 {} 包起来。
x = 1
y = 2.3
print(f'{x+1}') #2
x = 1
print(f'{x+1=}') #x+1=2
d = 12
print(f'abc{d}') # 其中的{}中为变量或表达式
# 可以使用:对变量进一步格式化
pi = 3.1415
print(f'{pi:.2f}') # 3.14
3.1.6 常用的API
字符串还有其他的操作方法,如:
str.capitalize()
返回原字符串的副本,其首个字符大写,其余为小写。
str.casefold()
返回原字符串消除大小写的副本。 消除大小写的字符串可用于忽略大小写的匹配。
str.center(width[, fillchar])
返回长度为 width 的居中字符串。 使用指定的 fillchar 填充空位(默认为 ASCII 空格)。 如果 width 小于等于
len(s)则返回原字符串。str.count(sub[, start[, end]])
返回子字符串 sub 在 [start, end] 范围内非重叠出现的次数。 可选参数 start 与 end 会被解读为切片表示法。
如果 sub 为空,则返回字符之间的空字符串数,即字符串的长度加一。
这些操作方法我们可以去python官网(https://docs.python.org/zh-cn/3.12/library/stdtypes.html#text-sequence-type-str)进行查询使用,这里不再过多叙述。
3.2 数字类型
Python 中的基本的数字类型
-
整数 int
-
浮点数(小数) float
-
布尔类型数 bool
3.2.1 整型(int)
## 十进制的写法
100 0 -5
## 二进制的写法 0b 开头 后跟 0~1
0b1101
## 八进制的写法 0o开头 后跟 0~7
0o777 等于 0b111111111 等于 511
## 十六进制的写法 0x 开头 后跟 0~9, a-f, A-F
0xA1B2C3D4 等于 2712847316
3.2.2 浮点数(float)
## 小数写法
3.14 0.14 .14 3.0 3. 0.0
## 科学计数法
6.18E-1 # 等同于 0.618
2.9979E8 # 等同于 299790000.0
3.2.3 布尔类型(bool)
-
表示真假、对错、黑白等;
-
只有2个值True和False;
-
类型转换使用bool()方法
-
非0都是True
-
0、0.0、-0.0、空字符串、空列表、空字典、空集合、空元组、None等都是False;
3.2.4 运算
所有数字类型(复数除外)都支持下列运算(有关运算优先级,请参阅:运算符优先级):
| 运算 | 结果: | 备注 | 完整文档 |
|---|---|---|---|
|
| x 和 y 的和 | ||
|
| x 和 y 的差 | ||
|
| x 和 y 的乘积 | ||
|
| x 和 y 的商 | ||
|
| x 和 y 的商数 | (1)(2) | |
|
|
| (2) | |
|
| x 取反 | ||
|
| x 不变 | ||
|
| x 的绝对值或大小 | ||
|
| 将 x 转换为整数 | (3)(6) | |
|
| 将 x 转换为浮点数 | (4)(6) | |
|
| 一个带有实部 re 和虚部 im 的复数。im 默认为0。 | (6) | |
|
| 复数 c 的共轭 | ||
|
|
| (2) | |
|
| x 的 y 次幂 | (5) | |
|
| x 的 y 次幂 | (5) |
注释:
-
也称为整数除法。 对于 int 类型的操作数,结果的类型为 int。 对于 float 类型的操作数,结果的类型为 float。 总的说来,结果是一个整数,但结果的类型不一定为 int。 结果总是向负无穷的方向舍入:
1//2为``0``,(-1)//2为-1,1//(-2)为-1,(-1)//(-2)为0。 -
不可用于复数。 而应在适当条件下使用 abs() 转换为浮点数。
-
从 float 转换为 int 将会执行截断,丢弃掉小数部分。 请参阅 math.floor() 和 math.ceil() 函数了解替代的转换方式。
-
float 也接受字符串 "nan" 和附带可选前缀 "+" 或 "-" 的 "inf" 分别表示非数字 (NaN) 以及正或负无穷。
-
Python 将
pow(0, 0)和0 ** 0定义为1,这是编程语言的普遍做法。 -
接受的数字字面值包括数码
0到9或任何等效的 Unicode 字符(具有Nd特征属性的代码点)。


1084

被折叠的 条评论
为什么被折叠?



