Day7-总结

2019-06-12  本文已影响0人  SheeranED

一.认识列表

1.什么是列表(list)

2.列表中的元素

list1 = [10, '', True, [1, 2]]

3.查 - 获取列表中的元素

names = ['张学友', '刘德华']
print(names[1])
for index in range(len(names)):
    print(index, names[index])
for index in range(-1, -len(names), -1):
    print(index, names[index])

二.增删改

1.在列表中添加元素 - 增

film_list = ['变形金刚', '无间道', '窃听风云']
film_list.append('沉默的羔羊')
film_list.insert(1, '肖生克的救赎')

2.删(删除列表中的元素)

del film_list[0]
print(film_list)
# del film_list[10]  下标不能越界del film_list[0]
print(film_list)
# del film_list[10]  下标不能越界
age_list = [20, 18, 19, 22, 18]
age_list.remove(18)
del_age = age_list.pop()
del_film = film_list.pop()
print(del_film)

3.改(修改列表中某个元素的值)

nums = [1, 2, 3]
nums[1] = 200

三.删除元素

# 删除列表中低于60分的所有成绩
scores = [89, 59, 43, 100, 98, 30, 70, 45, 57, 88]
new_scores = []
for item in scores:
    if item > 60:
        new_scores += [item]
print(new_scores)
# 方案一:保证删除的时候下标不发生改变
scores = [89, 59, 43, 100, 98, 30, 70, 45, 57, 88]
index = 0
while index < len(scores):
    if scores[index] < 60:
        del scores[index]
        continue
    index += 1
print(scores)
# 方案二:遍历备份数据,删除原数据
scores = [89, 59, 43, 100, 98, 30, 70, 45, 57, 88]
temp = scores[:]
for score in temp:
    if score < 60:
        scores.remove(score)
print(scores)

四.列表相关计算

1.数学运算:+,*

list1 = [1, 2, 3]
list2 = ['a', 'b', 'c']
print(list1*3)  # [1, 2, 3, 1, 2, 3, 1, 2, 3]

2.比较运算:==, !=

3.in 和 not in

names = ['张学友', '刘德华']
print('黎明' in names)

4.len(序列) - 获取序列中元素的个数

5.list(数据) - 将数据转换成列表

list3 = list('fsafsa')
print(list3)

五.列表相关的方法

1.内置函数

scores = [23, 89, 80, 98, 78, 60, 89, 45]
print(max(scores))
print(sum(scores))
print(sum(range(101)))

2.列表相关的方法

scores = [23, 89, 80, 98, 78, 60, 89, 45, 98]
print(scores.count(98))
scores.extend([20, 30])
print(scores)
print(scores.index(98))
scores = [23, 89, 80, 98, 78, 60, 89, 45, 98]
scores.reverse()
print(scores
scores = [23, 89, 80, 98, 78, 60, 89, 45, 98]
scores.sort()
print(scores)
scores = [23, 89, 80, 98, 78, 60, 89, 45, 98]
scores.sort(reverse=True)
print(scores)
scores.clear()
print(scores)
scores = [23, 89, 80, 98, 78, 60, 89, 45, 98]
new_scores = scores.copy()
print(new_scores)
nums = [1, 5, 3, 6, 4, 3, 5, 5, 3, 7]
# 先获取最大次数
max1 = 0
for item in nums:
    cs = nums.count(item)
    if cs > max1:
        max1 = cs
# 找到出现次数和最大次数相等的元素
max_num = []
for item in nums:
    if max1 == nums.count(item):
        # 保证同一个元素只添加一次
        if item not in max_num:
            max_num.append(item)
print(max_num)
# 列表元素去重
nums1 = [1, 2, 3, 2, 4, 3, 3, 5]
new_num = []
for item in nums1:
    if item not in new_num:
        new_num.append(item)
print(new_num)
nums1 = [1, 2, 3, 2, 4, 3, 3, 5]
temp = nums1[:]
for item in temp:
    cs2 = nums1.count(item)
    if cs2 > 1:
        nums1.remove(item)
print(nums1)
上一篇 下一篇

猜你喜欢

热点阅读