-
字符串
# r''表示''内部的字符串默认不转义
print('\\\t\\') # \ \
print(r'\\\t\\')# \\\t\\
# 多行输出
print('''line1
line2
line3''')
# 字符串常用函数
ord() # 获取字符的整数表示
chr() # 把编码转换成对应的字符
b'ABC' # 把ABC变成以字节为单位的bytes
str.encode('utf-8') # 编码为指定的byte
b'ABC'.decode() # 把bytes变为str
len() #计算str的字符数/计算bytes的字节数
-
布尔值
# and 与运算
# or 或运算
# not 非运算
-
空值(None)
-
两种除法
# 地板除(//):两个整数的除法仍然是整数
# 除法(/):除法的结果是浮点数
-
list与tuple
# list
list = ['Michael', 'Bob', 'Tracy']
print(list[0]) # 'Michael'
print(list[-1]) # 'Tracy' 从-1开始从后往前检索
list.append('Adam') # 插入表尾
list.insert(1, 'Jack') # 插入1位置之前
list.pop() # 删除表尾元素
list.pop(1) # 删除1位置元素
list[1] = 'Pig' # 直接替换
# list中元素的数据类型可以不同
# tuple
# 与list相似,但tuple初始化后就不能修改
t = (1, 2)
# 元组只有一个元素时,需要定义成
t = (1,)
-
条件判断
if <条件判断1>:
<执行1>
elif <条件判断2>:
<执行2>
elif <条件判断3>:
<执行3>
else:
<执行4>
# 注意不要将':'忘记
if x:
print('True')
# 只要x是非零数值、非空字符串、非空list等,就判断为True,否则为False
-
循环
for i in list/tuple:
print(i)
# range(n) 从0到小于n的整数
n = 99
while n > 0:
n = n - 3
print(n)
if n = 5:
break
# break 可以提前跳出循环
# continue 跳过该次循环,进入下一循环
-
dict与set
# 字典 相当于c++中的map
#dict的key必须是不可变对象
# 直接通过这种方式赋值,如果未赋值直接检索就会报错
d['jack'] = 10
# 判断某键值是否存在的方法
# 法一
judgement = 'Thomas' in d
if judgement = true:
print('该key存在')
# 法二
if d.get('Tomas') = None:
print('该key不存在')
# 自定义返回值,不存在返回-1
d.get('Tomas', -1)
#删除key
d.pop('Bob')
# set
# set可以看成数学意义上的无序和无重复元素的集合
# set中元素不能重复
# 创建set需要提供list作为输入集合
s = set([1, 2, 3])
{1, 2, 3}
# 添加元素
s.add(4)
# 删除元素
s.remove(4)
# set可以进行 & 和 | 运算
# 对于不变对象来说,调用对象自身的任意方法,也不会改变该对象自身的内容
# !!! tuple为不可变对象,但如果tuple中包含可变对象也不能作为key