python基础之四:list、tuple

南楼画角 提交于 2019-12-05 02:52:05

一、列表 list

 1 #  列表
 2 
 3 '''
 4     类似str,可以进行切片
 5 '''
 6 
 7 li = ['123', [1, 2, 3], 55, 'we all in ', 'Tom', '']
 8 print(li[0:2])
 9 print(li[::])
10 print(li[1])
11 print(li[3:0:-1])
12 
13 #  列表的操作
14 
15 '''
16 一、"增"
17 1、末尾添加元素:append
18 需求:公司的hr要录入人员名单,只要不输入q,就继续输入,否者停止
19 '''
20 names = []
21 while 1:
22     name = input("请输入员工名单:").strip()
23     if name.lower() == 'q':
24         break
25     else:
26         names.append(name)
27 print(names)
28 
29 '''
30 2、插入元素:insert
31 '''
32 li.insert(2, "Beijing")
33 
34 '''
35 3、可迭代的末尾插入
36 '''
37 li.extend('weid')
38 print(li)
39 
40 '''
41 二、删
42 '''
43 li.pop() # 默认删除最后一个
44 nam = li.pop(-2) # 有返回值
45 print(name, li)
46 li.remove('d')  # 如果没有报错
47 
48 li.clear() #清空列表
49 
50 del li  # 从内存中删除
51 del li[0:2]  # 切片式删除
52 
53 '''
54 三、改
55 '''
56 li[0] = '男神'
57 # 按切片修改,将切片内容删除,然后拆分后加入
58 li[0:2] = '女生' # 会拆分,有几个拆分几个,加入列表中
59 li[0:2] = ['23w', '22', '33']
60 
61 '''
62 四、查
63 '''
64 # for循环
65 for i in li:
66     print(i)
67 # 切片查询
68 li[0]
69 li[0:]
70 
71 '''
72 公共方法
73 '''
74 print(len(li))  # 列表长度
75 print(li.count('33'))  # 列表中出现33元素的次数
76 li.index('123')  # 找索引,只有该方法,没有则报错
77 
78 
79 '''
80 列表排序
81 '''
82 nums = [1, 2, 5, 7, 9, 10, 3]
83 print(nums.sort())  # 正向排序
84 nums.sort(reverse=True)  # 反向排序
85 # 列表反转
86 nums.reverse()
View Code

二、元组 tuple 只读列表,可循环查询,可切片。

# 元组 只读列表,可循环查询,可切片。

# 需求1:打印处所有元素,包扣子元素中的列表的元素
li = ['13', 'taobao', ['a', 2, 0], 88]
# print(type(li).__name__)

for i in li:
    # if not(isinstance(i, list)):
    if type(i) != list:
        print(i)
    else:
        for j in i:
            print(j)

print(li[0])
print(li[0:])

# 儿子不能改,孙子可能可以改。
li[2][0] = li[2][0].upper()
li[2].append('8')
print(li)

# 字符串的join操作,
s = "wohowe"
print("_".join(s))
# 还可将列表转为字符串,前提是列表中都必须是字符串
print(''.join(['a', '8', '9', 'tom']))  # list --> str  对应的是str --> list 用split

# range的使用,表示一个按顺序排列的数字列表
for j in range(0, 10):  # 同样是顾头不顾腚,0可以不写
    print(j)
for i in range(1, 10, 2):  # 有步长,则必须写
    print(i)
for i in range(1, 10, -1):  # 如此写,不会报错,但是没有输出
    print(i)
for i in range(10, 0, -1):  # 倒序输入10到1,没尾巴0
    print(i)

# 利用range实现需求1
for m in range(len(li)):
    if type(li[m]) == list:
        for n in li[m]:
            print(n)
    else:
        print(li[m])

 

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!