nums = [3, 1, 9, 8, 2, 4, 0, 7, 5]
nums.sort(reverse=True)
print(nums[0])
nums1 = [3, 1, 9, 8, 2, 4, 0, 7, 5]
n = max(nums1)
print(n)
nums2 = [3, 1, 9, 8, 2, 4, 0, 7, 5]
a = nums2[0]
# print(len(nums2))
for num in nums2:
if num > a:
a = num
b = nums2.index(a)
print('发现的最大数是%d,下标是%d' % (a, b))
移除空字符串
# 删除列表里面的空字符串
x = ['hello', 'good', '', '', 'yes', 'ok', '']
# x = ['hello', 'good', 'yes', 'ok']
#方法一:不可行
# 在使用for...in循环遍历时,尽量不要进行增删操作
# for word in x:
# if word == '':
# x.remove(word)
# print(x)
#方法二
# i = 0
# while i < len(x):
# if x[i] == '':
# x.remove(x[i])
# i -= 1
# i += 1
# print(x) #['hello', 'good', 'yes', 'ok']
# 方法3
x2 = []
for word in x:
if word != '':
x2.append(word)
x = x2
print(x)
列表的嵌套
import random
#nums = [1, 2, [100, 200, 300], 3, 4, 5] # 多维数组
# 一个学校,有三个办公室,8个老师等待分配工位,编程随机解决
teachers = ['A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J']
rooms = [[], [], []]
for teacher in teachers:
room = random.choice(rooms) #从列表中随机选择一个数据
room.append(teacher)
print(rooms)
# 第0个房间有几个人,分别是...
# 注意:带下标一般使用while,for循环也可以带下标
for i, room in enumerate(rooms):
print('房间%s里一共有%d个老师,分别是:' % (i, len(room)), end=' ')
for teacher in room:
print(teacher,end=' ')
print()
列表推导式
# 列表推导式作用是使用简单的语法创建一个列表
nums = [i for i in range(10)]
print(nums)
x = [i for i in range(10) if i % 2 == 0]
print(x) #[0, 2, 4, 6, 8]
y = [i for i in range(10) if i % 2]
print(y) #[1, 3, 5, 7, 9]
points = [(p, q) for p in range(5, 9) for q in range(10, 20)]
print(points)
列表推导式的练习
# 写一段代码实现 分组一个list里面的元素,比如[1, 2, 3, ...100]变成[[1, 2, 3],[4, 5, 6]...]
m = [i for i in range(1, 101)]
n = [m[j:j + 3] for j in range(0, 100, 3)]
print(n)