Python 列表1

2016-12-15  本文已影响23人  SateZheng

[]来表示一个列表,列表中的元素可以是任意类型,如 int,str, 可以是另一个 list,也可以是一个字典。所以说 listpython 的苦力,什么活都可干。

>>> list = ["string",86,[1,2,3],{"a":3,"b":4,"c":"hi"}]
>>> type(list)
<type 'list'>

索引和切片

和之前字符串使用的方法一致,不过因为列表中可能什么都有,所以可以对元素进行二次切片

>>> list[0]         
'string'
>>> list[0][2:5]        #对列表中第一个字符换进行了二次切分
'rin'
>>> list[3]["a"]        #对列表中第4个字典换进行了二次切分
3

反转

这个功能会经常用到,字符串也可以使用,并不会更改原值,会创建新值,原变量不变

# 列表的反转
>>> list = [1,2,3,4,5]
>>> list[::-1]
[5, 4, 3, 2, 1]

# 字符串的反转
>>> a = "hello"
>>> a[::-1]
'olleh'

另一种方法,使用reversed函数

>>> list(reversed("abcd"))
['d', 'c', 'b', 'a']
>>> ha = [1,2,3,4.5]
>>> list(reversed(ha))
[4.5, 3, 2, 1]

list 的基本操作

和字符串的差不多

len() 判断长度

>>> lst
['python', 'java', 'c++']
>>> len(lst)
3

+,连接两个序列

>>> lst
['python', 'java', 'c++']
>>> alst
[1, 2, 3, 4, 5, 6]
>>> lst + alst
['python', 'java', 'c++', 1, 2, 3, 4, 5, 6]

*,重复元素

>>> lst
['python', 'java', 'c++']
>>> lst * 3
['python', 'java', 'c++', 'python', 'java', 'c++', 'python', 'java', 'c++']

in, 成员资格判断

>>> "python" in lst
True
>>> "c#" in lst
False

max()和min(),取最大最小值

以int类型元素为例。如果不是,都是按照字符在ascii编码中所对应的数字进行比较的。

>>> alst
[1, 2, 3, 4, 5, 6]
>>> max(alst)
6
>>> min(alst)
1
>>> max(lst)
'python'
>>> min(lst)
'c++'

cmp(),比较

>>> lsta = [2,3]
>>> lstb = [2,4]
>>> cmp(lsta,lstb)
-1
>>> lstc = [2]
>>> cmp(lsta,lstc)
1
>>> lstd = ['2','3']
>>> cmp(lsta,lstd)
-1

append(), 追加元素

>>> a = ["good","python","I"]      
>>> a
['good', 'python', 'I']
>>> a.append("like")        #向list中添加str类型"like"
>>> a
['good', 'python', 'I', 'like']
>>> a.append(100)           #向list中添加int类型100
>>> a
['good', 'python', 'I', 'like', 100]

另一种方法:

list.append(x)等效于:a[len(a):]=[x]

>>> a
['good', 'python', 'I', 'like', 100]
>>> a[len(a):]=[3]      #len(a),即得到list的长度,这个长度是指list中的元素个数。
>>> a
['good', 'python', 'I', 'like', 100, 3]
>>> len(a)
6
>>> a[6:]=['xxoo']
>>> a
['good', 'python', 'I', 'like', 100, 3, 'xxoo']
上一篇下一篇

猜你喜欢

热点阅读