【第22期】观点:IT 行业加班,到底有没有价值?

Python列表常用操作

原创 2015年07月07日 17:49:06

Python的列表非常好用,一些常用的操作写在这里。


在Python中创建一个列表时,解释器会在内存中创建一个类似数组(但不是数组)的数据结构来存储数据。列表中的编号从 0 开始,然后是1,依此类推。

这里写图片描述



print() 显示列表;

len() 得出列表中有多少数据项;

append() 在列表末尾追加一个数据项;

extend() 在列表末尾增加一个数据项集合;

pop() 在列表末尾删除一个数据项;

remove() 在列表中删除一个特定的数据项;

insert() 在特定位置前面增加一个数据项;

count() 统计某个数据项在列表中出现的次数;

reverse() 反向列表中数据项。


>>> Fruit = ["Apple","Pear","Grape","Peach","Bananer"]
>>> print(len(Fruit))
5
>>> print(Fruit[0])
Apple
>>> print(Fruit[4])
Bananer

>>> Fruit.append("tomato")
>>> print(Fruit)
['Apple', 'Pear', 'Grape', 'Peach', 'Bananer', 'tomato']

>>> Fruit.extend(["lemon","coconut"])
>>> print(Fruit)
['Apple', 'Pear', 'Grape', 'Peach', 'Bananer', 'tomato', 'lemon', 'coconut']

>>> Fruit.pop()
'coconut'
>>> print(Fruit)
['Apple', 'Pear', 'Grape', 'Peach', 'Bananer', 'tomato', 'lemon']

>>> Fruit.remove("Peach")
>>> print(Fruit)
['Apple', 'Pear', 'Grape', 'Bananer', 'tomato', 'lemon']
>>> Fruit.remove(Fruit[0])
>>> print(Fruit)
['Pear', 'Grape', 'Bananer', 'tomato', 'lemon']

>>> Fruit.insert(0,"Apple")
>>> print(Fruit)
['Apple', 'Pear', 'Grape', 'Bananer', 'tomato', 'lemon']
>>> Fruit.insert(6,"coconut")
>>> print(Fruit)
['Apple', 'Pear', 'Grape', 'Bananer', 'tomato', 'lemon', 'coconut']

>>> Fruit.count("Apple")
1





用迭代显示列表中的数据项,以下的代码段中 forwhile 完成的工作是一样的:

>>> for item in Fruit:
    print(item)
>>> while count < len(Fruit):
      print(Fruit[count]) 
      count = count + 1
# 输出结果
Apple
1
Pear
2
Bananer
3


如果字符串中需要包含双引号,不要忘记转义 ,\”

>>> Fruit.append("\"Tomato\"")
>>> print(Fruit)
['Apple', 1, 'Pear', 2, 'Bananer', 3, '"Tomato"']


isinstance() 函数可以用来判断特定标识符是否包含某个特定类型的数据。

>>> isinstance(Fruit,list)
True

>>> isinstance(count,list)
False



Python中列表可以嵌套,并且可以支持任意多层的嵌套,例如:

>>> print(Fruit)
['Apple', 1, 'Pear', 2, 'Bananer', 3]

>>> Fruit.append(["A","B","C"])
>>> print(Fruit)
['Apple', 1, 'Pear', 2, 'Bananer', 3, '"Tomato"', ['A', 'B', 'C']]

>>> Fruit[-1].append(["aa","bb","cc"])
>>> print(Fruit)
['Apple', 1, 'Pear', 2, 'Bananer', 3, '"Tomato"', ['A', 'B', 'C', ['aa', 'bb', 'cc']]]
>>> for i in Fruit:
    print(i)

Apple
1
Pear
2
Bananer
3
"Tomato"
['A', 'B', 'C', ['aa', 'bb', 'cc']]

试试输出三层嵌套的列表中的各个数据项:

>>> for i in Fruit:
    if isinstance(i,list):
        for j in i:
            if isinstance(j,list):
                for k in j:
                    print(k)
            else:
                print(j)
    else:
        print(i)


Apple
1
Pear
2
Bananer
3
"Tomato"
A
B
C
aa
bb
cc



上面的循环嵌入的有点多,如果是N层嵌套的列表重复代码会很多,来点优化试试:

>>> def my_print(mylist):
    for i in mylist:
        if isinstance(i,list):
            my_print(i)
        else:
            print(i)

>>> my_print(Fruit)

Apple
1
Pear
2
Bananer
3
"Tomato"
A
B
C
aa
bb
cc

定义个递归函数实现,看起来好多了。



列表操作符部分,+表示列表组合,*表示列表重复:

>>> mylist = [1,2,3] + [4,5,6]
>>> print mylist
[1, 2, 3, 4, 5, 6]

>>> mylist = mylist*4
>>> print(mylist)
[1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6]


今天就写到这里吧。

版权声明:本文为博主原创文章,未经博主允许不得转载。 举报

相关文章推荐

python学习笔记(二)列表(List)操作方法详解

列表是Python中最基本的数据结构,列表是最常用的Python数据类型,列表的数据项不需要具有相同的类型。列表中的每个元素都分配一个数字 - 它的位置,或索引,第一个索引是0,第二个索引是1,依此类...

python ftp操作脚本&常用函数

需求:快速进行ftp上传 ,下载,查询文件 <span style="font-family: arial,verdana,sans-serif; font-s

程序员升职加薪指南!还缺一个“证”!

CSDN出品,立即查看!

Python 列表(List)操作方法详解

列表是Python中最基本的数据结构,列表是最常用的Python数据类型,列表的数据项不需要具有相同的类型。列表中的每个元素都分配一个数字 - 它的位置,或索引,第一个索引是0,第二个索引是1,依此类...

Python:数组、列表(list)、字典(dict)、字符串(string)常用基本操作小结

[size=x-large][color=red]连接 list 与分割字符串[/color][/size][url]http://woodpecker.org.cn/diveintopython/native_data_types/joining_lists.html[/url] 连接 list...

python基础之列表常用操作及知识点小结

列表(list) List(列表) 是 Python 中使用最频繁的数据类型。列表可以完成大多数集合类的数据结构实现。它支持字符,数字,字符串甚至可以包含列表(所谓嵌套)。列表用[ ]标识,是p...
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)