1、用方括号([])表示列表,用逗号分隔其中的元素。元素可以是字符串、浮点数、整数,元素之间可以毫无关系。times = ['星期一','SUNDAY',"1.18",123]
times = ['星期一','SUNDAY',"1.18",123,1.2]print(times)['星期一', 'SUNDAY', '1.18', 123, 1.2]列表是有序集合,因此要访问列表的任何元素,只需将该元素的位置。从0开始计数,正向索引 0、1、2…… ,负向索引:-1
print(times[0])print(times[-1])星期一1.2不能使用()或者{}来进行索引,只有[]合法.
print(times{1})print(times(1)) Cell In[3], line 1 print(times{1}) ^SyntaxError: invalid syntax. Perhaps you forgot a comma?对字符串的处理同理可以用于索引。
times = ['星期一','SUNDAY',"1.18",123,1.2]print(times[1].lower())print(float(times[2]),type(float(times[2])))sunday1.18 <class 'float'>列表的值可以用作format语句
print(f'小明在{times[2]},也就是{times[0]},走了{times[-1]}步去上学。')小明在1.18,也就是星期一,走了1.2步去上学。要修改列表指定元素,可指定列表名和要修改的元素的索引,再指定该元素的新值。times = ['星期一','SUNDAY',"1.18",123]将'星期一' 替换成 '星期五' times[0] = '星期五'
times = ['星期一','SUNDAY',"1.18",123] times[0] = '星期五'times[-1] = 'apple'print(times)['星期五', 'SUNDAY', '1.18', 'apple']1、在某尾添加元素 .append() 。例如:我想要在 times = ['星期一','SUNDAY',"1.18",123] 列表的末尾添加元素'apple'times.append('apple')
times = ['星期一','SUNDAY',"1.18",123] times.append('apple')print(times)['星期一', 'SUNDAY', '1.18', 123, 'apple']同样的,也可以先创建空列表[],再使用append()添加元素。
days = []days.append('星期一')days.append('Monday')print(days)['星期一', 'Monday']days.append(星期二) ## 这个正确吗---------------------------------------------------------------------------NameError Traceback (most recent call last)Cell In[13], line 1----> 1 days.append(星期二)NameError: name '星期二' is not defined2、使用.insert(),可在列表的任意位置添加新元素。为此,需要指定新元素的索引和值:times = ['星期一','SUNDAY',"1.18",123] #在其中的第0位置添加 Pythontimes.ins
times = ['星期一','SUNDAY',"1.18",123] times.insert(0,'Python')print(times)['Python', '星期一', 'SUNDAY', '1.18', 123]可以在times的第8位置添加元素吗?
times = ['星期一','SUNDAY',"1.18",123] times.insert(8,'Python')print(times)['星期一', 'SUNDAY', '1.18', 123, 'Python']可以使用负索引吗?
times = ['星期一','SUNDAY',"1.18",123] times.insert(-1,'Python')print(times)['星期一', 'SUNDAY', '1.18', 'Python', 123]1、del 删除指定位置元素
times = ['星期一','SUNDAY',"1.18",123] del times [1] print(times)['星期一', '1.18', 123]2、.pop删除指定元素.pop() 在括号中不指定索引时默认删除末尾元素.pop(1) 删除指定位置元素
times = ['星期一','SUNDAY',"1.18",123] times.pop(0)print(times)['SUNDAY', '1.18', 123]那del和pop不是重复了吗?其实不然,del只是删除元素,而.pop()可以删除并print出删除的以元素
times = ['星期一','SUNDAY',"1.18",123] print(f'在序列{times}中删除了{times.pop(1)},序列变成{times}')在序列['星期一', 'SUNDAY', '1.18', 123]中删除了SUNDAY,序列变成['星期一', '1.18', 123]3、删除同类型元素只知道要删除的元素的值,可使用 .remove() 方法同样可以和.pop()print出删除的元素,不再赘述。
times = ['星期一','SUNDAY',"1.18",123] a = times.remove('1.18') print(times)print(a)['星期一', 'SUNDAY', 123]Nonesort函数list.sort( key= None , reverse= False) key -- 主要是用来进行比较的元素,只有一个参数,具体的函数的参数就是取自于可迭代对象中,指定可迭代对象中的一个元素来进行排序。reverse -- 排序规则,reverse = True 降序, reverse = False 升序(默认)。
其中key目前用不到,知道即可。
numbers = [121,31,312,43,4,13.2] numbers.sort()print(numbers)[4, 13.2, 31, 43, 121, 312]reverse -- 排序规则,reverse = True 降序, reverse = False 升序(默认)。
numbers.sort(reverse=True)print(numbers)[312, 121, 43, 31, 13.2, 4]sort可以排序数字和英文的字符串
names = [ 'Google', 'Runoob', 'Taobao', 'Facebook','123']names.sort()print(names)['123', 'Facebook', 'Google', 'Runoob', 'Taobao']下面代码该输出什么?
names = [ 'Google', 'Runoob', 'Taobao', 'Facebook']print(names.sort())None.sort会原地排序并输出none。
sorted函数能够按特定顺序显示列表元素,同时不影响它们在列表中的排列顺序。
names = [ 'Google', 'Runoob', 'Taobao', 'Facebook','123'] print(sorted(names))print(names)['123', 'Facebook', 'Google', 'Runoob', 'Taobao']['Google', 'Runoob', 'Taobao', 'Facebook', '123']sorted可以传入的参数和sort一样,不再赘述。
reversereverse只反转位置,不进行任何排序。
names = [ 'Google', 'Runoob', 'Taobao', 'Facebook','123'] names.reverse()print(names)['123', 'Facebook', 'Taobao', 'Runoob', 'Google']len()使用 len() 函数可快速获悉列表的长度---由元素个数决定。
names = [ 'Google', 'Runoob', 'Taobao', 'Facebook','123'] print(len(names))5创建一个喜欢的食物列表。(英文)
添加一个新食物,删除一个不喜欢的。
将列表按照升序排列。
反转列表排序。
打印一句话:“我最想吃的是 [列表中的某个值]”。
for循环假设我们有一个开会人员名单,需要将其中每个参加会议人员的名字都打印出 来。为此,可以使用很多次print分别获取名单中的每个名字,但这种做法会导致许多问题。例如,很长的名单将包含大量重复的代码;每当名单的长度发生变化时,都必须修改代码。使用 for 循环,可让 Python 去处理每个元素,从而避免这些问题。
for X in list : 循环执行的代码执行一次的代码其中x是临时变量,list是列表
foods = ['banana', 'apple', 'mango']a = 0for food in foods:print(food) a = a+1print(a)print('循环完成')bananaapplemango3循环完成不要遗忘缩进、冒号
range()函数range(start, stop, step) 1、 start 选择起始数字 2、 stop 选择结束数字 3、 step 选择每步步长
左开右闭
range(2) ### 结束数字是2,起始数字默认0,步长默认1range(1,2) ### 结束数字是2,起始数字默认1,步长默认1range(1,2,0.1) ### 结束数字是2,起始数字默认1,步长认0.1-------会报错?注意在range中步长不能是浮点数,numpy的数组才可以。---------------------------------------------------------------------------TypeError Traceback (most recent call last)Cell In[29], line 3 1 range(2) ### 结束数字是2,起始数字默认0,步长默认1 2 range(1,2) ### 结束数字是2,起始数字默认1,步长默认1----> 3 range(1,2,0.1)TypeError: 'float' object cannot be interpreted as an integerr1 = range(1,3) print(r1)### 不会默认展开元素range(1, 3)print(*r1) ### 前面加上* 进行解包1 2range进行for循环for r in r1:print(r)12range创建列表a = list(range(7))print(list(r1))a = list(r1)[1, 2]1、使用一个 for 循环打印数 1~20(含),并计算1加到20的值。2、通过给 range() 函数指定第三个参数来创建一个列表,其中包含 1~20 的奇数;再使用一个 for 循环将这些数打印出来。3、创建一个列表,其中包含 3~30 内能被 3 整除的数,再使用一个 for 循环将这个列表中的数打印出来。