2019年4月19日
1.元组
- 元组用()定义,数组即列表用【】定义,元组一旦定义完成不可以修改,元组可以保存不同类型的数据类型/个人感觉有点像C++中结构体的感觉
- 定义空元组
empty_typle = ()
- 只包含一个元素的元组/定义要加逗号
empty_typle = (5) # 它的类型是int
empty_typle = (5,) # 它是tuple元组类型
- 元组的常用操作
info_tuple = ("zhangsan", "zhangsan", 18, 175)
# 1.取值和取索引
print(info_tuple[0])
print(info_tuple.index("zhangsan"))
# 2.统计计数
print(info_tuple.count("zhangsan"))
# 3.统计元组包含个数
print(len(info_tuple))
# 4.元组的遍历
info_tuple = ("zhangsan", 18, 1.75)
for my_info in info_tuple:
print(my_info)
- 应用场景:
(1)函数的参数和返回值
(2)格式字符串
infor = ("小明", 18, 175) #这就是元组
print("%s的年龄是:%d 身高是 %.2f" % infor)
(3)让列表不可以被修改,以保证其安全性
- 元组和列表的转换
list = typle【。。。】
tuple = list(。。。)
2.字典
- 列表和字典的区别: 列表是有序的数据集合,字典是无序的数据集合。(无序:不用在乎数据保存的数据),感觉有点像结构体。在使用字典时候键必须是唯一的
- 字典的定义:
# 1.字典变量的定义
xiaoming = {"name": "小明", # 字典无序,不关注输出顺序
"age": 18,
"genfer": True,
"height": 1.75,
"weignt": 75.5}
- 字典的操作
# 2.取值
print("该用户的名字是:%s" % xiaoming["name"])
# 3.增加,删除
xiaoming["school"] = "CUMT" # k不存在新增,存在则修改
# 4.删除
xiaoming.pop("name") # 删除 name
# 5.统计数量
print(len(xiaoming))
# 6.合并字典
asd = {"add": "papa"}
xiaoming.update(asd)
# 7.清空字典
xiaoming.clear()
- 字典的遍历
# 8.字典的循环遍历,变量k是每次拿到的键值key
for k in xiaoming:
print("%s -- %s " % (k, xiaoming[k]))
- 字典和列表的应用场景:用字典定义对象的信息,将单个的对象一个个放在列表中
card_list = [
{"name": "zhangsan,",
"qq": "123456,",
"phone": "18252115105"
},
{"name": "lisi",
"qq": "1666364106",
"phone": 18795387502}
]
for card_info in card_list:
print(card_info)
运行结果
E:\pro\05_高级数据类型\venv\Scripts\python.exe E:/pro/05_高级数据类型/hm_11_列表字典应用场景.py
{'name': 'zhangsan,', 'qq': '123456,', 'phone': '18252115105'}
{'name': 'lisi', 'qq': '1666364106', 'phone': 18795387502}
3.==字符串==
- 定义字符串,注意单双引号的使用
# 1.字符串的定义
str1 = "heelo python"
str2 = '我的外号是"大西瓜"'
- 0.字符串操作之基本操作
# 2.len()统计长度
print(len(str1))
# 3.统计小字符串出现次数
print(str1.count("llo"))
# 4.判断子字符串出现位置
print(str1.index("llo"))
- 1.字符串操作之判断类型
# 5.isspace()判断空白字符等(制表符,空格都属于空白字符)返回TRUE
print(space_str.isspace())
# 6.判断字符串是否只包含数字
print(str1.isdecimal())
print(str1.isdigit())
print(str1.isnumeric())
- 2.字符串操作之查找和替换
# 7.查找指定字符串
print(str1.startswith("hello")) # 是否以指定字符串开始
print(str1.endswith("hello")) # 是否以指定位置结束
print(str1.find("llo")) # 注意和index的区别
# 8.替换
print(str1.replace("hello", "python")) # replace形成新字符串,不会改变原来的字符串
print(str1)
- 3.字符串操作之文本对其
# 9.字符串文本对其
poem = ["登黄鹤楼",
"王焕之",
"白日依山尽",
"黄河入海流",
"欲穷千里目",
"更上一层楼"]
for poem_str in poem:
print("|%s|" % poem_str.center(10, " "))
- 4.字符串操作之去除空白字符
# 10.去除空白字符
print(poem_str.strip())
- 5.拆分和连接
poem = "登黄鹤楼, 王焕之, 白日依山尽\t ,黄河入海流, 欲穷千里目\n,更上一层楼"
print(poem)
# 11.拆分字符串
poem_list = poem.split()
print(poem_list)
print(poem)
# 12.合并字符串 使用“”作为分隔符
result = " ".join(poem_list)
print(result)
- 6.==字符串的切片==
# 13.字符串的切片 python提供倒叙索引,最后为-1,切片切索引范围之间的值
num = "0123456789"
print(num[2:6])
print(num[2:])
print(num[:6])
print(num[:])
print(num[::2])
print(num[1::2])
print(num[-1])
print(num[2:-1])
print(num[::-1]) # 获取逆序
print(num[::-2])
4.公共方法:高级数据类型通用的方法
函数 | 描述 |
---|---|
len(item) | 计算容器中元素的个数 |
del(item) | 删除变量 |
max(item) | 返回最大值 |
min(item) | 返回最小值 |
cmp(item1,item2) | 比较大小,python3中不存在cmp |
网友评论