Python学习笔记4--列表

1.列表同字符串一样也是一个序列,所有适用于字符串的下标表示方法都同样适用于列表。列表的遍历、"+"和"*"同字符串的遍历、"+"和"*"也是一样的。列表的长度也是len(l)。
     注:列表的乘法l = [1,2,3],则l * 3为[1,2,3,1,2,3,1,2,3],而不是[[1,2,3,],[1,2,3,] ,[1,2,3,] ]
2.列表的中的值称为元素或数据项,可以是任意类型(包括列表),且同一列表内的元素类型可以不相同。对于列表的元素是列表或字符串的,可以用多个下标来标明具体的列表元素或某个字符。
     例如:
     >>>l = [['a', 'b', 'cd'], 'string', 3]
     >>>l[0][2][0]
     'c'
     >>>l[1][2]
     'r'
3.列表是可变的,可以直接对列表做修改、增加、删除等操作。
     例如:
     >>>l = ['a', 'b', 'c', 'd', 'e', 'f']
     >>>l[1:6:2]=[1, 2, 3]
     >>>l
     ['a', 1, 'b', 2, 'e', 3]
4.列表的方法:
     (1)添加
  • l.append(element) #添加一个元素到原列表的末尾
  • l.extend(list) #添加一个列表的所有元素到原列表的末尾,等同l+list
  • l.insert(i, element) #在原列表i下标的位置添加一个元素
     (2)删除
  • l.remove(x) #移除列表中最左边出现x的元素,找不到x时产生异常
  • l.pop(i) #返回列表下标为i的元素,并把它移除。若i省略,则返回列表最后一个元素,并移除
  • del l[start:end:step] #从列表中下标为start到end-1隔step-1个元素进行删除。start、end和step都可以省略
  • l.clear() #清除l中所有的元素
     (3)查找
  • l.index(x, start, end) #在l[start, end]中寻找x,并返回最左边出现x的下标,如果找不到产生异常。start和end可以同时省略,或只省略end
  • l.count(x) #返回x在列表中出现的次数
     (4)排序
  • l.sort(key=expr, reverse =Bool) #当列表各元素是同类型且可以排序时,通过key后的单变量函数提取计算每个元素的比较值,根据reverse的值对l做升序或降序排列,否则产生异常。key常用的单变量函数有str.lower,str.upper,str.swapcase,abs等。key缺省时默认为None,reverse缺省时默认为False。与sorted(l)不同,l.sort()排序是直接改变列表的
  • l.reverse() #降序排列
5.sum(list) #当列表的元素都是数字时,会返回list中的所有元素的和,否则产生异常
6.很有意思的情况:
(1)整型
>>>a = 5
>>>b = 5
>>>a is b
False
>>>c = a
>>>c is a
True
>>>c -= 1
>>>c is a
False
>>>a
5
>>>c
4
(2)字符串
>>>s = 'hello'
>>>t = 'hello'
>>>s is t
True
(2)列表
>>>l = [1, 3, 5, 7]
>>>m =[1, 3, 5, 7]
>>>m is l
False
>>>n = l
>>>n is l
True
>>>del n[0]
>>>l
[3, 5, 7]
>>>n = m.copy()
>>>l is n
False    #n和l一直是相同的,直到其中一个变量被重新赋值
所以在数字变量作为参数被传入函数时是不会改变原来变量的(除非用返回值重新赋值),而列表变量作为参数被传入函数时,不需要返回值,原来变量也会与函数做出相同的改变。如果不想修改原变量,可以做一个浅拷贝,例如,n = l[:],或n = l.copy()
7.通过l = l + [x]和l.append(x)的方法都可以得到一个末尾增加了x元素的列表。但是l = l + [x]是将列表拼接后对l重新赋值,l.append(x)是直接在原列表后增加一个元素。当需要一直增加,随着列表越来越长时会发现l = l + [x]用时越来越长。例如《像科学家一样思考Python》中第10章的习题,将一个文件里的11万多单词连成一个列表,用两种方法的用时相差1000多倍
8.字符串和列表的相互转换:字符串的s.split()和sorted(s)都会产生列表的拷贝;当l中的各元素都为字符或字符串时," ".join(l)会将l中的各元素拼接成以" "为分隔符的字符串
Python学习笔记》是由皮大庆编写的一本关于Python语言学习的教材。在这本书,作者详细介绍了Python语言的基础知识、语法规则以及常用的编程技巧。 首先,作者简要介绍了Python语言的特点和优势。他提到,Python一种易于学习和使用的编程语言,受到了广大程序员的喜爱。Python具有简洁、清晰的语法结构,使得代码可读性极高,同时也提供了丰富的库和模块,能够快速实现各种功能。 接着,作者详细讲解了Python的基本语法。他从变量、数据类型、运算符等基础知识开始,逐步介绍了条件语句、循环控制、函数、模块等高级概念。同时,作者通过大量的示例代码和实践案例,帮助读者加深对Python编程的理解和应用。 在书,作者还特别强调了编写规范和良好的编程习惯。他从命名规范、注释风格、代码缩进等方面指导读者如何写出清晰、可读性强的Python代码。作者认为,良好的编程习惯对于提高代码质量和提高工作效非常重要。 此外,作者还介绍了Python的常用库和模块。他提到了一些常用的库,如Numpy、Pandas、Matplotlib等。这些库在数据处理、科学计算、可视化等领域有广泛的应用,帮助读者更好地解决实际问题。 总的来说,《Python学习笔记》是一本非常实用和全面的Python学习教材。通过学习这本书,读者可以系统地学习和掌握Python编程的基础知识和高级应用技巧,为以后的编程学习和工作打下坚实的基础。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值