@感谢中国大学MOOC,感谢张莉老师的国家精品课程。仅仅作为学习记录用
老天爷,漫漫编程路,遍地秃头人。🤦
# -*- coding: utf-8 -*-
"""
听课笔记:3.5
Practice makes perfect.
@author: 敲下世界只为她!
"""
"""
列表的方法
1.参数的作用:parameter
enumerate : 参数作用
------------------------------------------------------------------------------
week = ['Monday','Tuesday','Wednesday','Thursday','Friday']
weekend = ['Saturday','Sunday']
week.extend(weekend) # 将两个列表的元素合二为一的操作
for i,j in enumerate(week,start=1): # i是元素索引(i+1),j为元素内容
print(i,j)
------------------------------------------------------------------------------
2.参数:
append
copy
count
extend
index
insert
pop
remove
reverse
sort:排序 (reverse =True key=len)
------------------------------------------------------------------------------
3.列表解析:改变列表并非新建列表时。有时候表达非常方便我们因该很好的掌握这种表达式。
[x for x in range(10)] [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
[x**2 for x in range(10)] [0, 1, 4, 9, 16, 25, 36, 49, 64, 81]
[x**2 for x in range(10) if x**2 <50] [0, 1, 4, 9, 16, 25, 36, 49]
[(x+1,y+1) for x in range(2) for y in range(2)]
------------------------------------------------------------------------------
4.咖啡列表:
处理列表后只剩下咖啡名称,并将结果输出。
tips:1.isalpha:如果字符串至少有一个字符并且所有字符都是字母或文字则返回 True
2.zip:在 Python 3.x 中为了减少内存,zip() 返回的是一个对象。
"""
def clean_list(lst):
cleaned_list = [] # 新建一个清楚后的空列表,然后每处理一个原列表的元素就将元素添加到新列表中
for item in lst: # 此循环遍历所有咖啡列表的元素
for c in item: # 此循环遍历每一个咖啡中的每一个元素
if c.isalpha() != True: # 如果c元素的字符串不是真的话/如果c的每一个元素有不满足要求的东西的话,就执行下面的。用不等于或者FALSE
item = item.replace(c, '') # 把那个有问题的引子替换掉为空,因为item本身不会改变所以要增加一个赋值语句
cleaned_list.append(item) # 为什么把添加元素的循环放到这里面呢?或者和元素并列呢,因为上一步骤是对不合理元素的加工并且输出,如果不保存下一个item的值就不的办法
return cleaned_list
coffee_list = ['32Latte','_Americano_30','/34Cappuccino','Mocha35'] # 首先定义一个列表然后收纳起来
cleaned_list = clean_list(coffee_list) # 定义一个功能函数功能为清楚杂项因子,满足列表所要求的函数,把咖啡列表作为实参操作
for k,v in zip(range(1,len(cleaned_list)+1),cleaned_list): # zip(序号,元素),打包为元素列表然后输出
print(k,v)