1.列表
1.1优点
可以存储多个数据,且可以是不同数据类型
1.2常用操作
1.2.1查找
1.2.1.1下标
list1 = ['apple', 'orange', 'banana']
print(list1[0])
print(list1[1])
print(list1[2])
1.2.1.2函数
- index():返回数据的下标,如果不存在,则报错
list1 = ['apple', 'orange', 'banana']
print(list1.index('banana',0,2))
- count():统计数据在列表中出现的次数
list1 = ['apple', 'orange', 'banana','apple']
print(list1.count('apple'))
- len():计算列表长度(即数据个数)
list1 = ['apple', 'orange', 'banana']
print(len(list1))
1.2.1.3判断是否存在
- in:判断指定数据存在
- not in:判断指定数据不存在
list1 = ['apple', 'orange', 'banana']
print('apple' in list1)
print('pear' in list1)
print('apple' not in list1)
print('pear' not in list1)
1.2.2增加
- append():在列表结尾增加数据
list1 = ['apple', 'orange', 'banana']
list1.append('pear')
print(list1)
直接在原列表增加数据,因此列表为可变数据类型
- extend():列表结尾增加数据,如果数据是一个序列,那么逐一增加
list1 = ['apple', 'orange', 'banana']
list1.extend('pear')
print(list1)
list1 = ['apple', 'orange', 'banana']
list1.extend(['pear', 'watermelon'])
print(list1)
- insert():在指定位置新增数据
list1 = ['apple', 'orange', 'banana']
list1.insert(1,'pear')
print(list1)
1.2.3删除
-
del
list1 = ['apple', 'orange', 'banana']
del list1
print(list1) #删除整个列表
list1 = ['apple', 'orange', 'banana']
del list1[1]
print(list1) #删除指定数据
- pop():删除指定下标的数据(默认为最后一个),并返回该值
list1 = ['apple', 'orange', 'banana']
del_fruit = list1.pop(1)
print(del_fruit)
print(list1)
- remove():移除列表中某个数据的第一个匹配项
list1 = ['apple', 'orange', 'banana', 'apple']
list1.remove('apple')
print(list1)
- clear():清空列表
list1 = ['apple', 'orange', 'banana']
list1.clear()
print(list1)
1.2.4修改
-
修改指定下标
list1 = ['apple', 'orange', 'banana']
list1[1] = 'pear'
print(list1)
- reverse():逆置
n_list = [1, 8, 4, 6, 9, 56]
n_list.reverse()
print(n_list)
- sort():排序,默认为升序
n_list = [1, 45, 2, 31, 12, 3]
n_list.sort()
print(n_list)
n_list.sort(reverse=True)
print(n_list)
1.2.5复制
-
copy():
list1 = ['apple', 'orange', 'banana']
list2 = list1.copy()
print(list2)
1.3循环遍历
1.3.1while
list1 = ['apple', 'orange', 'banana']
i = 0
while i < len(list1):
print(list1[i])
i += 1
1.3.2for
list1 = ['apple', 'orange', 'banana']
for i in list1:
print(i)
1.4列表嵌套
list1 = [['apple', 'orange'], 'banana']
print(list1[0][1])
1.5综合应用
需求:有3个办公室,8位老师,把老师随机分配至办公室
import random office = [[],[],[]] teacher = [1,2,3,4,5,6,7,8] for i in teacher: num = random.randint(0,2) office[num].append(i) j = 0 for i in range(0,3): print(f'第{i}个办公室中的老师为{office[i]}') i += 1
2.元组
2.1优点
可存储多个数据,且不能修改
2.2语法
t1 = ('hi', 10, 3.1)
t2 = (10,) #,不能省略
print(type(t1))
print(type(t2))
2.3常用操作
元组不支持修改,只要
支持查找
-
下标
t1 = ['apple', 'orange', 'banana']
print(t1[0])
- index():数据存在,返回下标,否则报错
t1 = ['apple', 'orange', 'banana']
print(t1.index('orange'))
- count():统计次数
t1 = ['apple', 'orange', 'banana', 'apple']
print(t1.count('apple'))
- len():统计数据个数
t1 = ['apple', 'orange', 'banana']
print(len(t1))
- 可修改元组中列表里的数据
t1 = ['apple', 'orange', 'banana', [10,20,30]]
t1[3][0] = 'aa'
print(t1)
3.字典
3.1优点
可使用统一标准来查找数据
3.2语法
-
冒号前面为键(key),冒号后面为值(value)
dict1 = {'name':'A', 'age':18, 'gender':'女'}
#空字典
dict2 = {}
字典可变
3.3常用操作
3.3.1增加
dict1 = {'name':'A', 'age':18, 'gender':'女'}
dict1['name'] = 'B'
print(dict1)
dict1['num'] = 123
print(dict1)
3.3.2删除
-
del()
dict1 = {'name':'A', 'age':18, 'gender':'女'}
del dict1['name']
print(dict1)
- clear():
dict1 = {'name':'A', 'age':18, 'gender':'女'}
dict1.clear()
print(dict1)
3.3.3修改
同增加操作
3.3.4查找
-
key值查找
dict1 = {'name':'A', 'age':18, 'gender':'女'}
print(dict['name'])
- get():
dict1 = {'name':'A', 'age':18, 'gender':'女'}
print(dict1.get('name'))
print(dict1.get('id', 110))
print(dict1.get('id'))
-
keys()
-
values()
-
items()
dict1 = {'name':'A', 'age':18, 'gender':'女'}
print(dict1.keys())
print(dict1.values())
print(diact1.items())
3.4循环遍历
-
遍历key
-
遍历value
-
遍历元素
-
遍历键值对
dict1 = {'name':'A', 'age':18, 'gender':'女'}
for key in dict1.keys():
print(key)
for value in dict1.values():
print(value)
for item in dict1.items():
print(item)
for key.value in dict1.items():
print(f'{key} = {value}')
4.集合
4.1优点
可以去掉重复数据,集合数据无序,不支持下标
4.2语法
s1 = {10,2,5,12,13}
print(s1)
s2 = set('asdfghj')
print(s2)
s3 = set()
print(type(s3))
4.3常用操作
4.3.1增加
-
add()
s1 = {10,2,5,12,13}
s1.add(123)
print(s1)
s1.add(2)
print(s1)
- update():增加的数据为序列
s1 = {10,2,5,12,13}
s1.update([12,13,56])
print(s1)
4.3.2删除
-
remove():删除指定元素,如果不存在则报错
s1 = {10,2,5,12,13}
s1.remove(10)
print(s1)
- discard():删除指定元素,若不存在也不会报错
s1 = {10,2,5,12,13}
s1.discard(10)
print(s1)
- pop():随机删除,并返回这个数据
s1 = {10,2,5,12,13}
del_n = s1.pop()
print(del_n)
print(s1)
4.3.3查找
-
in:判断数据在集合序列
-
not in:判断不在集合序列
s1 = {10,2,5,12,13}
print(10 in s1)
print(2 not in s1)
5.作业练习
5.1
1.一、在北京和广州中间插入上海; 二、删除不属于中国的城市; 三、将省份名称改为其省会城市; 四、在末尾加上台北。cities = ["北京", "广州", "波士顿", "深圳", "湖南", "成都", "洛杉矶", "武汉", "浙江", "香港", "澳门"]
cities = ["北京", "广州", "波士顿", "深圳", "湖南", "成都", "洛杉矶", "武汉", "浙江", "香港", "澳门"]
cities.insert(1,'上海')
cities.remove('波士顿')
cities.remove('洛杉矶')
cities[4] = '长沙'
cities[7] = '杭州'
cities.append('台北')
print(cities)
#运行结果:
['北京', '上海', '广州', '深圳', '长沙', '成都', '武汉', '杭州', '香港', '澳门', '台北']
5.2
2. 字符串替换 编写一个Python程序,接受用户输入的一个字符串和一个字符,将该字符串中所有的指定字符替换为 *,并输出结果。
str1 = input('请输入一个字符串:')
str2 = input('请输入需要被替换的字符:')
new_str = str1.replace(str2, '*', str1.count(str2))
print(new_str)
#运行结果:
请输入一个字符串:asdfdfghj
请输入需要被替换的字符:d
as*f*fghj
5.3
3. 计算字符串中字符的出现次数 编写一个Python程序,接受用户输入的一个字符串和一个字符,计算并输出该字符在字符串中出现的次数。
str1 = input('请输入一个字符串:')
str2 = input('请输入需要统计次数的字符:')
num = str1.count(str2)
print(num)
#运行结果:
请输入一个字符串:zxcvcvcvbnm
请输入需要统计次数的字符:c
3
5.4
4. 首字母大写 编写一个Python程序,接受用户输入的一个字符串,将字符串中每个单词的首字母转换为大写,并输出结果。
str1 = input('请输入一个字符串:')
print(str1.title())
#运行结果:
请输入一个字符串:a good child
A Good Child
5.5
现有列表["苹果", "香蕉", "橙子", "葡萄"] a)添加新的榴莲到列表中。 b)从列表中移除最后一个水果。 c)删除香蕉 d)遍历该列表
list1= ["苹果", "香蕉", "橙子", "葡萄"]
list1.append('榴莲')
list1.pop()
list1.remove('香蕉')
for fruit in list1:
print(fruit)
#运行结果:
苹果
橙子
葡萄
5.6
6.dic = {'k1':'v1', 'k2':'v2', 'k3':[11,22,33]} 请在字典中添加一个键值对,'k4':'v4',输出添加后的字典 请在修改字典中的'k1'对应的值为'alex',输出修改后的字典 请在k3对应的值中追加一个元素44,输出修改后的字典 请在k3对应的值的第一个位置插入个元素18,输出修改后的字典
dic = {'k1':'v1', 'k2':'v2', 'k3':[11,22,33]}
dic['k4'] = 'v4'
print(dic)
dic['k1'] = 'alex'
print(dic)
dic['k3'] .append(44)
print(dic)
dic['k3'].insert(0,18)
print(dic)
#运行结果:
{'k1': 'v1', 'k2': 'v2', 'k3': [11, 22, 33], 'k4': 'v4'}
{'k1': 'alex', 'k2': 'v2', 'k3': [11, 22, 33], 'k4': 'v4'}
{'k1': 'alex', 'k2': 'v2', 'k3': [11, 22, 33, 44], 'k4': 'v4'}
{'k1': 'alex', 'k2': 'v2', 'k3': [18, 11, 22, 33, 44], 'k4': 'v4'}
标签:dict1,apple,Day8,Python,list1,学习,orange,print,banana
From: https://blog.csdn.net/2401_82468877/article/details/143973206