python 3 列表操作

简介:

  创建列表subject = ["Liunx","python","web","java"]

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
#读取列表
 
print (subject)
 
#打印显示
[ 'Liunx' 'python' 'web' 'java' ]
 
#列表的切片,切片的索引是从0开始的
print (subject[ 0 ])  # 0 号索引,也就是列表的第一个元素
print (subject[ 1 ])  
print (subject[ 2 ])
print (subject[ 3 ])
 
print (subject[ 1 : 3 ]) # 读取列表的第二个元素至第四个元素,第四个元素取不到,有头无尾
print (subject[ - 1 ]) #读取列表的最后一个元素
print (subject[ - 2 ])  # 读取列表的倒数第二个元素
print (subject[ - 3 :])  #读取列表的倒数第三个元素至最后一个元素
#打印显示
Liunx
python
web
java
[ 'python' 'web' ]
java
web
[ 'python' 'web' 'java' ]

 列表的追加 

 创建 列表 subject = ["Liunx","python","web","java"]

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#追加列表
subject.append( "php" )
 
#打印列表
 
print (subject)
[ 'Liunx' 'python' 'web' 'java' 'php' ]
 
##追加内容到指定的位置
subject.insert( 1 , "windows" # 将windows ,插入到1号索引
 
#打印 列表
print (subject)
[ 'Liunx' 'windows' 'python' 'web' 'java' 'php' # 1号索引已变成Windows 了
 
subject.insert( 2 , "UI" )
#打印 列表
print (subject)
 
[ 'Liunx' 'windows' 'UI' 'python' 'web' 'java' 'php' ]

 # 列表的删除

 创建 列表 subject = ['Liunx', 'windows', 'UI', 'python', 'web', 'java', 'php']

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
#删除指定元素
subject.remove( "php" )
#打印列表
print (subject)
[ 'Liunx' 'Unix' 'UI' 'python' 'web' 'java' ]
#根据索引删除
del  subject[ 0 #删除Liunx
#打印列表
print (subject)
[ 'Unix' 'UI' 'python' 'web' 'java' ]
# pop 默认删除最后一个元素,此处删除java
subject.pop()
#打印列表
[ 'Unix' 'UI' 'python' 'web' ]
#查找某个名称的索引
print (subject.index( "python" ))
2

 #统计元素的个数

 创建列表 subject = ['Liunx', 'windows', 'UI', 'python', 'web', 'java', 'php','python']

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
print (subject.count( "python" ))
print (subject)
2
 
#列表的反转
 
subject.reverse()
 
print (subject)
 
[ 'python' 'php' 'java' 'web' 'python' 'UI' 'windows' 'Liunx' ]
 
#列表的排序  排序规则按照assci 码规则
subject.sort()
print (subject)
[ 'Liunx' 'UI' 'java' 'php' 'python' 'python' 'web' 'windows' ]
 
# 列表的清除 
subject.clear()
print (subject)
[]

 列表的拓展  extend

 创建列表

subject = ['Liunx', 'windows', 'UI', 'python', 'web', 'java', 'php','python']

subject2 = ["a","b","c"]

1
2
3
4
5
6
7
subject.extend(subject2)
print (subject)
print (subject2)
 
#打印列表
[ 'Liunx' 'windows' 'UI' 'python' 'web' 'java' 'php' 'python' 'a' 'b' 'c' ]
[ 'a' 'b' 'c' ]

 #列表的copy 

 创建列表  subject = ["Liunx","python","web",["c++","ruby"],"java"] 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
subject  =  [ "Liunx" , "python" , "web" ,[ "c++" , "ruby" ], "java"
subject3  =  subject.copy() #拷贝subject 的内容
#打印列表
print (subject)
print (subject3)
[ 'Liunx' 'python' 'web' , [ 'c++' 'ruby' ],  'java' ]
[ 'Liunx' 'python' 'web' , [ 'c++' 'ruby' ],  'java' ]
 
#修改 subject 元素的内容
subject[ 0 = "GNU liunx 
subject[ 3 ][ 0 ] = "C++"
#打印列表
print (subject)
print (subject3)
[ 'GNU liunx ' 'python' 'web' , [ 'C++' 'ruby' ],  'java' # subject 
[ 'Liunx' 'python' 'web' , [ 'C++' 'ruby' ],  'java' # subject 3
 
可以看到 修改subject[ 0 = "GNU liunx  的内容没有在subject3 里面生效,subject[3][0]=" C + + " 这个元素生效。浅copy 只copy 一层,嵌套部分的不会被copy
,只是copy 了里面的内存地址,当subject[ 0 = "GNU liunx 相当于重新开辟了一块内存地址,所以subject3[ 0 ] 读取的元素内容还是Liunx
 
浅拷贝 对应的是深拷贝
import  copy
subject  =  [ "Liunx" , "python" , "web" ,[ "c++" , "ruby" ], "java" , "PHP" # 里面重新赋值
subject[ 0 = "small liunx "
subject[ 3 ][ 0 ] = "C++"
subject3  =  copy.deepcopy(subject)
print (subject)
print (subject3)
[ 'small liunx ' 'python' 'web' , [ 'C++' 'ruby' ],  'java' 'PHP' ]
[ 'small liunx ' 'python' 'web' , [ 'C++' 'ruby' ],  'java' 'PHP' ]

 #列表的循环取值

 #创建列表  subject = ["Liunx","python","web",["c++","ruby"],"java","PHP"]

1
2
3
4
5
6
7
8
9
10
subject  =  [ "Liunx" , "python" , "web" ,[ "c++" , "ruby" ], "java" , "PHP" ]
for  in  subject:
     print (i)
#打印列表
Liunx
python
web
[ 'c++' 'ruby' ]
java
PHP

Python 的列表操作至此完成。




本文转自 水滴石川1 51CTO博客,原文链接:http://blog.51cto.com/sdsca/2050626,如需转载请自行联系原作者

相关文章
|
1月前
|
数据格式 Python
如何使用Python的Pandas库进行数据透视图(melt/cast)操作?
Pandas的`melt()`和`pivot()`函数用于数据透视。基本步骤:导入pandas,创建DataFrame,然后使用这两个函数转换数据格式。示例代码展示了如何通过`melt()`转为长格式,再用`pivot()`恢复为宽格式。输入数据是包含'Name'和'Age'列的DataFrame,最终结果经过转换后呈现出不同的布局。
39 6
|
1月前
|
Unix Shell Linux
赞!优雅的Python多环境管理神器!易上手易操作!
赞!优雅的Python多环境管理神器!易上手易操作!
|
16天前
|
人工智能 机器人 C++
【C++/Python】Windows用Swig实现C++调用Python(史上最简单详细,80岁看了都会操作)
【C++/Python】Windows用Swig实现C++调用Python(史上最简单详细,80岁看了都会操作)
|
1天前
|
算法 数据挖掘 数据处理
使用 Python 循环创建多个列表
在Python中,动态创建多个列表对于数据处理和算法实现十分有用。本文介绍了四种方法:1) 列表推导式,如创建偶数和奇数列表;2) 使用循环和`append()`,示例为生成斐波那契数列;3) 结合字典与循环,按条件(如正负数)分组;4) 列表生成器,用于一次性生成多组随机数列表。这些方法有助于提高代码效率和可读性。
7 1
|
5天前
|
索引 Python
如何使用Python的Pandas库进行数据透视表(pivot table)操作?
使用Pandas在Python中创建数据透视表的步骤包括:安装Pandas库,导入它,创建或读取数据(如DataFrame),使用`pd.pivot_table()`指定数据框、行索引、列索引和值,计算聚合函数(如平均分),并可打印或保存结果到文件。这允许对数据进行高效汇总和分析。
10 2
|
8天前
|
Python
python学习-函数模块,数据结构,字符串和列表(下)
python学习-函数模块,数据结构,字符串和列表
49 0
|
8天前
|
索引 容器
06-python数据容器-list列表定义/list的10个常用操作/列表的遍历/使用列表取出偶数
06-python数据容器-list列表定义/list的10个常用操作/列表的遍历/使用列表取出偶数
|
9天前
|
存储 索引 Python
python学习5-列表的创建、增删改查、排序
python学习5-列表的创建、增删改查、排序
|
12天前
|
数据采集 JSON 网络协议
「Python系列」Python urllib库(操作网页URL对网页的内容进行抓取处理)
`urllib` 是 Python 的一个标准库,用于打开和读取 URLs。它提供了一组模块,允许你以编程方式从网络获取数据,如网页内容、文件等。
34 0
|
14天前
|
索引 Python 容器
python 数据类型之列表
python 数据类型之列表