6.字符串的转义字符
# 加入r可以使字符原样输出,特别是路径\n很容易被识别成换行符
hello_message = '欢迎阿斗\n,喵喵喵!!!!' #欢迎阿斗 # ,喵喵喵!!!! hello_message2 = r'欢迎阿斗\n,喵喵喵!!!!'
#欢迎阿斗\n,
喵喵喵!!!!
print(hello_message) 、
print(hello_message2)
path = 'E:\apache-jmeter-5.6.3\backups' #E:pache-jmeter-5.6.ackups
path2 = r'E:\apache-jmeter-5.6.3\backups' #E:\apache-jmeter-5.6.3\backups print( path) print(path2)
3)元组:tuple
# ✅ 允许重复元素 - 同一个值可以出现多次
# ✅ 有序 - 元素保持插入顺序
# ✅ 可变 - 可以随时添加、删除、修改元素
# # 1.列表的定义
list1 = [123,'ok',[123,456,789],('ok',78.3)]
print(list1,type(list1))
# # 2.列表索引
print(list1[0:3]) # print(list1[-1::-1])
# # 3.修改与删除列表元素
del list1[0] # print(list1)
list1[0] = 'hello'
print(list1)
# 4.列表的常用函数
# (1)列表元素的添加
# 1 .append() 增加一个元素
#每次都被初始化了,所以没有重复添加,反复执行的时候
list1.append('大狗叫') # print(list1)
# # 2. extend() 添加多个元素
new = ['小猫叫','小牛叫','小羊叫','小鸡叫']
list1.expend(new)
# # 3. insert() 指定位置插入
list1.insert(0,'小牛叫') # print(list1) # list1.insert(2,'小马叫') # print(list1)
# (2)列表元素的删除
# 1. pop (索引值)
# 默认是-1,删除列表末尾的元素
# 也可以指定删除某个位置的元素
# 并返回该元素
list1 = [123,'ok',[123,456,789],('ok',78.3)]
把返回值赋值给了frist
print(list1)
frist = list1.pop(0)
last = list1.pop() # print(frist) # print(last)
print(list1)
# 2.remove(值) 根据值进行删除
list1.remove('ok') print(list1)
4)字典
允许重复❌ 键不重复
有序 ✅
可变✅
1.字典的定义
Python 中 {} 默认是空字典、
要创建空集合必须用 set()
dict1 = {"name":"大狗","year":13,"sex":"男"} print(dict1,type(dict1))
# 2.字典取值
(1)dict["key"],通过key进行取值 print(dict1["name"])
#(2)dict.get("key"),通过.get()进行取值 print(dict1.get("name"))
# 3.字典的增加
dict1['peiOu'] = '小芳' print('增加后字典的显示:',dict1)
# 4.字典的删除
del dict1['year'] print('删除后字典的显示:',dict1)
# 5.字典的修改
dict1['newname'] = dict1['name']
print('修改后字典的显示:',dict1)
del dict1['name']
print('修改后并删除old key字典的显示:',dict1)
updata 批量修改字典的值
dict2 = {'name':'小马','year':12,'sex':'男','shool':'中心学校'}
print('使用updata 前的字典:',dict1)
print('dict2的值',dict2) dict1.update(dict2)
print('使用updata 更新后',dict1)
5)集合
#集合的定义
set1 = {1,1,1,1,1,222,3,22,3,6,66,66,66,9} print(set1,type(set1))
#空集合
set2 = set() print(set2,type(set2))
#集合与列表相互转换去重
list1 = [1,1,1,1,1,222,3,22,3,6,66,66,66,9]
print('使用集合去重前',list1,id(list1))
set1 = set(list1)
print('使用集合去重后',set1,type(set1)) list1 = list(set1)
print('使用集合去重后,转换成列表',list1,id(list1))
6)#可变类型:list,set,dict(值是不可变类型,[1,2]不能用列表之类的去定义key)
#不可变类型:int,string,tuple
# ✅ 可以作为 key 的类型(不可变)
my_dict = { "string": "字符串key", # str
123: "整数key", # int
3.14: "浮点数key", #float
(1, 2): "元组key", # tuple(元素也必须不可变)
True: "布尔key", # bool
frozenset([1, 2]): "冻结集合key" # frozenset }
# ❌ 不能作为 key 的类型(可变)
{[1, 2]: "列表key"} # list - 会报错 TypeError
{{1, 2}: "集合key"} # set - 会报错 TypeError
{{"a": 1}: "字典key"}
num = 123 print(num,id(num)) #123 140708701835344
num = num + 1 print(num,id(num)) #124 140708701835376
9.运算符
(1)算数运算符
/ 与 // 的区别 / 真除法 → 返回浮点数(保留小数)
// 整除法 → 返回整数(向下取整)
#对于正数,向下取整就是去掉小数部分
#对于负数,向下取整是往更小的负数取
print(5/2) #2.5 # print(5//2) #2
print(5//2.0) #2.0
print(5//2.0000) #2.0
# // 也是向下取整
print(-10 // 3) #-4
print(-10 / 3) #-3.3333333333333335
# % 取余数
print(10 % 3) # 1
# ** 幂运算 # print(2 ** 3) # 8
# # (2)比较运算符
# # ==, !=, >, <, >=, <=
# # 等式成立则返回True
# # 不等式成立则返回False
print(5 == 5) # True
print(5 != 5) # False
# # (3) 逻辑运算符
# # and, or, not
# # not 真假取反
print(not True) # False
print(not False) # True
print(not 5) # False
print(not 0) # True
# # (4) 赋值运算符
# # =, +=, -=, *=, /=, %=, **=, //=
a = 10
a += 5 # 等价于 a = a + 5 → 15
a -= 3 # 等价于 a = a - 3 → 7
a *= 2 # 等价于 a = a * 2 → 20
a /= 4 # 等价于 a = a / 4 → 2.5
a //= 3 # 等价于 a = a // 3 → 3
a %= 7 # 等价于 a = a % 7 → 3
a **= 2 # 等价于 a = a ** 2 → 100
# (5)身份运算符
# is, is not
# is 判断两个变量是否指向同一个对象(内存地址相同)
# is not 是 is 的否定形式,用于判断两个变量是否不是同一个对象
# == 判断两个变量的值是否相等
a = 10 b = 10 print(a,id(a), b, id(b)) # 10 140737488347584 10 140737488347584
print(a is b) # True
print(a is not b) # False