Python 变量类型
变量类型
1. 变量赋值
Python 中变量赋值不需要类型声明。
每个变量在使用前必须声明,变量赋值后该变量才会被创建。
couter = 100 # 赋值整型变量
miles = 1000.0 # 浮点型
name = "John" # 字符串
Python 允许你同时为多个变量赋值。例如:
a = b = c = 1 # 多变量相同类型
a, b, c = 1, 2, "John" # 多变量不同类型
2. 标准数据类型
Python 有五个标准的数据类型:
- Numbers (数字)
- String (字符串)
- List (列表)
- Tuple (元组)
- Dictionary (字典)
3. Python 字符串
我们可以使用引号 ('
或 "
) 来创建字符串。
字符串中字串列表从左到右从 0 开始索引,最大范围是字符串长度减 1。
如果要实现从字符串中获取一段子字符串的话,可以使用 str[s : t]
来获取字符串从下标 s
到下标 t - 1
的子字符串
Python 三引号
允许字符串跨行进行赋值,字符串中可以包含换行符、制表符以及其他特殊字符。
hi = ''' hi
there
'''
print (hi)
# hi
# there
实例:
str = "Hello world!"
print (str) # 输出 str
print (str[0]) # 输出下标为 0 的单个字符
print (str[2 : 5]) # 输出下标 2 到 4 的字符串
print (str[2 : ]) # 输出下标 2 及以后的字符串
print (str * 2) # 输出字符串两次
print (str + "TEST") # 输出 str 与 连接的字符串
print (str[0 : 12 : 2]) # 从下标 0 到 下标11 每 2 个字符取一个
4. Python 列表
List (列表) 是 Python 中使用最频繁的数据类型。
列表可以完成大多数集合类的数据结构实现,其中的元素不需要数据类型相同
列表中值的切割也可以用到变量 [头下标 : 尾下标]
就可以截取相应的列表。
更新列表
可以使用 append(x) 的方式在列表中加入元素 x
list = []
list.append(1)
list.append('aa')
for a in list :
print (a)
# 输出:
# 1
# aa
删除列表元素
del(x) 删除下标为 x 的元素,但是后面元素前移一位。
使用 del 语句来删除列表的元素
list = ['physics', 'chemistry', '1997', '2000']
print (list)
del list[1]
print (list)
# 输出:
# ['physics', 'chemistry', '1997', '2000']
# ['physics', '1997', '2000']
Python 列表脚本操作符
Python 表达式 | 结果 |
---|---|
len(list) | 返回 list 的长度 |
list1 + list2 | 将 list1 与 list2 合并 |
x in list | 返回 x 是否在 list 中的 true 或者 false |
for x in list : | 遍历 list 中元素,当前元素记为 x |
实例:
list = [ 'runoob', 786 , 2.23, 'john', 70.2 ]
tinylist = [123, 'john']
print (list) # 输出完整列表
print (list[0]) # 输出列表的第一个元素
print (list[1:3]) # 输出第二个至第三个元素
print (list[2:]) # 输出从第三个开始至列表末尾的所有元素
print (tinylist * 2) # 输出列表两次
print (list + tinylist) # 打印组合的列表
# 输出:
# ['runoob', 786, 2.23, 'john', 70.2]
# runoob
# [786, 2.23]
# [2.23, 'john', 70.2]
# [123, 'john', 123, 'john']
# ['runoob', 786, 2.23, 'john', 70.2, 123, 'john']
5. Python 元组
元组是另一个数据类型,类似于 List (列表)。
元组用 ()
标识。 但是元组不能二次赋值,相当于只读列表。
6. Python 字典
字典 (Dictionary)是除列表以外 Python 中最灵活的内置数据类型。字典是无序的对象集合。
字典用 {}
标识。字典由索引 (key) 和它对应的值 value 组成。
d = {key1 : value1, key2 : value 2}
注意: dict 作为 Python 中的关键字和内置函数,变量名不建议命名为 dict
字典键的特性
字典值可以没有限制的取任何 Python 对象,既可以是标准的对象,也可以是用户定义的,但键不行。
-
不允许同一个键出现两次。创建时如果同一个键被赋值两次,后一个值会被记住。
t = {"name" : 1, "name" : 2} print (t['name']) # 输出: # 2
-
键必须不可变,所以可以用数字、字符串或元组充当,但是列表不行(列表可更新)
tinydict = {['name'] : 'Zara', 'Age' : 7} print ("tinydict['Name']: ", tinydict['Name']) # 这样的话会编译错误
修改字典:
向字典内添加内容的方法是增加新的 键 - 值,修改或者删除已有的 键 - 值
tinydict = {'name' : 'lys', 'Age' : 18}
tinydict['Age'] = 19 # 修改已有的 键 - 值
tinydict['label'] = 'caiji' # 添加新的 键 - 值
print ("tinydict['Age']: ", tinydict['Age'])
print ("tinydict['label']: ", tinydict['label'])
# 输出:
# tinydict['Age']: 19
# tinydict['label']: caiji
元素删除:
del 键
即可删除该 键 - 值
t = {'name' : 'lys'}
print (t)
del t['name']
print (t)
# 输出:
# {'name': 'lys'}
# {}
实例:
dict = {}
dict['one'] = "This is one"
dict[2] = "This is two"
tinydict = {'name': 'runoob','code':6734, 'dept': 'sales'}
print dict['one'] # 输出键为'one' 的值
print dict[2] # 输出键为 2 的值
print tinydict # 输出完整的字典
print tinydict.keys() # 输出所有键
print tinydict.values() # 输出所有值
7. Python 数字
该数据类型是不允许改变的,这就意味着如果改变 Number 数据类型的值,将重新分配内存空间。
Python math 模块、cmath 模块 (cmath 与 math 模块函数基本一致,但是 cmath 计算的是复数)
要先导入:
import math
函数 | 返回值 |
---|---|
abs(x) | 返回 \(x\) 的绝对值 |
math.ceil(x) | 返回数字的上取整数字 |
math.floor(x) | 返回数字的下取整数字 |
math.exp(x) | 返回 \(e ^ {x}\) |
math.log(x) | 返回以 \(e\) 为底的 \(x\) 的对数 |
max(x1, x2, ...) | 返回给定参数的最大值,参数可以 2 个以上 |
min(x1, x2, ...) | 返回给定参数的最小值,参数可以 2 个以上 |
math.pow(x, y) | 返回 \(x ^ y\),但是是浮点型(此为 math.pow 与内置的 pow 函数不同) |
math.sqrt(x) | 返回数字 x 的平方根 |