列表list——python
Python列表list数组array用法实例解析

Python列表list数组array⽤法实例解析本⽂以实例形式详细讲述了Python列表list数组array⽤法。
分享给⼤家供⼤家参考。
具体如下:Python中的列表(list)类似于C#中的可变数组(ArrayList),⽤于顺序存储结构。
创建列表复制代码代码如下:sample_list = ['a',1,('a','b')]Python 列表操作复制代码代码如下:sample_list = ['a','b',0,1,3]得到列表中的某⼀个值复制代码代码如下:value_start = sample_list[0]end_value = sample_list[-1]删除列表的第⼀个值复制代码代码如下:del sample_list[0]在列表中插⼊⼀个值复制代码代码如下:sample_list[0:0] = ['sample value']得到列表的长度复制代码代码如下:list_length = len(sample_list)列表遍历复制代码代码如下:for element in sample_list:print(element)Python 列表⾼级操作/技巧产⽣⼀个数值递增列表复制代码代码如下:num_inc_list = range(30)#will return a list [0,1,2, (29)⽤某个固定值初始化列表复制代码代码如下:initial_value = 0list_length = 5sample_list = [ initial_value for i in range(10)]sample_list = [initial_value]*list_length# sample_list ==[0,0,0,0,0]附:python内置类型'1、list:列表(即动态数组,C++标准库的vector,但可含不同类型的元素于⼀个list中)复制代码代码如下:a = ["I","you","he","she"] #元素可为任何类型。
Python中的列表(List)

Python中的列表(List)列表(List)是 Python 中最基本的数据结构,它是⼀种有序的集合,列表中每个元素都有其对应的位置值(索引)。
创建列表⼀般在创建列表时,分为创建空列表和⾮空列表,其创建⽅式如下:# 创建空列表,有两种⽅式list1 = list()list2 = []# 创建同⼀数据类型的列表list3 = ["a", "b", "c", "d", "e", "f"]# 创建不同数据类型的列表list4 = ["a", 2, {}, [1, 3], False, ()]从上⾯可以看到,我们只需要把列表的所有元素放在⽅括号 [] ⾥⾯,每个元素之间通过逗号 , 间隔起来即可,当然,列表中允许存放不同数据类型的元素。
获取列表中的元素下标索引取值列表中的下标索引都是从 0 开始计算,第⼀个元素索引是 0 ,第⼆个元素索引是 1 ,以此类推。
>>> books = ["语⽂", "数学", "英语", "历史", "物理", "化学"]>>>>>> books[0]'语⽂'>>> books[5]'化学'另外,我们也可以从列表尾部开始计算索引,此时最后⼀个元素索引为 -1,倒数第⼆个元素索引为 -2 ,以此类推即可。
当我们需获取列表最后⼀个元素,但⼜不知道列表长度时,可以通过该⽅式快速获取。
>>> books = ["语⽂", "数学", "英语", "历史", "物理", "化学"]>>>>>> books[-1]'化学'>>> books[-2]'物理'>>> books[-6]'语⽂'>>>>>> books[100]Traceback (most recent call last):File "<stdin>", line 1, in <module>IndexError: list index out of range如果设置的索引不存在,那么会报错:IndexError: list index out of range切⽚取值列表中切⽚的语法为:列表[start:end:step],通过切⽚可以获取到列表中指定范围的元素。
python初始化list列表(1维、2维)

python初始化list列表(1维、2维)1.初始化递增的list:list1 = range(10)#print list1#[0,1,2, (9)2.初始化每项为0的⼀维数组:list2 = [0] * 5#print list2#[0,0,0,0,0]3.初始化固定值的⼀维数组:initVal = 1listLen = 5list3 = [ initVal for i in range(5)]#print list3#[1,1,1,1,1]list4 = [initVal] * listLen#print list4#[1,1,1,1,1]4.初始化⼀个5x6每项为0(固定值)的数组(推荐使⽤):multilist = [[0 for col in range(5)] for row in range(6)]5.初始化⼀个5x6每项为0(固定值)的数组multilist = [[0] * 5 for row in range(3)]看到了以上的⽅法,那初始化⼀个⼆维数组时,是否可以这样做呢:multi = [[0] * 5] * 3其实,这样做是不对的,因为[0] * 5是⼀个⼀维数组的对象,* 3的话只是把对象的引⽤复制了3次,⽐如,我修改multi[0][0]:multi = [[0] * 5] * 3multi[0][0] = 'Hello'print multi输出的结果将是:[['Hello', 0, 0, 0, 0], ['Hello', 0, 0, 0, 0], ['Hello', 0, 0,0, 0]]我们修改了multi[0][0],却把我们的multi[1][0],multi[2][0]也修改了。
这不是我们想要的结果。
但是如下写法是对的:multilist = [[0] * 5 for row in range(3)]multilist[0][0] = 'Hello'print multilist我们看输出结果:[['Hello', 0, 0, 0, 0], [0, 0, 0, 0, 0], [0, 0, 0, 0, 0]]恩,没问题。
Python列表List的定义及操作

Python列表List的定义及操作# 列表概念:有序的可变的元素集合# 定义# 直接定义nums = [1,2,3,4,5]# 通过range函数构造,python2 和python3 版本之间的差异;# python3 ⽤的时候才会去构造nums = range(1,101)# 列表嵌套# 注意和C语⾔中数组的区别,是否可以存放不同的数据类型nums = [1,2,"ab","1",True,["a","b","c"]]# 列表赋值给另外⼀个列表# 原始的⽅式nums = [1,2,3,4,5]resultList = []for num in nums:resultList.append(num ** 2)print(resultList) # [1, 4, 9, 16, 25]# 列表推导式nums = [1,2,3,4,5]# [表达式 for 变量 in 列表]resultList = [num ** 2 for num in nums]print(resultList) # [1, 4, 9, 16, 25]# [表达式 for 变量 in 列表 if 条件]resultList = [num ** 2 for num in nums if num % 2 != 0]print(resultList) # [1, 9, 25]# 列表的增,删,改,插#-------------------------------------增------------------------------------## append# 作⽤# 往列表中, 追加⼀个新的元素# 在列表的最后# 语法# l.append(object)# 参数# object# 想要添加的元素# 返回值# None# 注意# 会直接修改原数组nums = [1, 2, 3, 4]nums.append(5) # ⽆返回值 noneprint(nums) # [1, 2, 3, 4, 5]# insert# 作⽤# 往列表中, 追加⼀个新的元素# 在指定索引前⾯# 语法# l.insert(index, object)# 参数# index# 索引, 到时会插⼊到这个索引之前# object# 想要添加的元素# 返回值# None# 注意# 会直接修改原数组nums = [1, 2, 3, 4]nums.insert(2, 5)print(nums) # [1, 2, 5, 3, 4]# extend# 作⽤# 往列表中, 扩展另外⼀个可迭代序列# 语法# l.extend(iterable)# 参数# iterable# 可迭代集合# 字符串# 列表# 元组# ...# 返回值# None# 注意# 会直接修改原数组# 和append之间的区别# extend可以算是两个集合的拼接# append是把⼀个元素, 追加到⼀个集合中nums = [1, 2, 3, 4]nums2 = ["a", "b", "c"]nums.extend(nums2)print(nums) # [1, 2, 3, 4, 'a', 'b', 'c']# 乘法运算# ["a"] * 3# =# ['a', 'a', 'a']nums = [1, 2]print(nums * 2) # [1, 2, 1, 2]# 加法运算# ["a"] + ["b", "c"]# =# ["a", "b", "c"]# 和extend区别# 只能列表类型和列表类型相加n1 = [1, 2]n2 = ["a", "b"]n3 = ["abc", "cdf"]print(n1 + n2); #[1, 2, 'a', 'b']print(n1 + n3); #[1, 2, 'abc', 'cdf']# ------------------------------------------删------------------------------# # del 语句# 作⽤# 可以删除⼀个指定元素(对象)# 语法# del 指定元素# 注意# 可以删除整个列表# 删除⼀个变量# 也可以删除某个元素nums = [1, 2, 3, 4]del nums[1]print(nums) # [1, 3, 4]#del nums #这样也⾏#print(nums)#程序会报错# pop# 作⽤# 移除并返回列表中指定索引对应元素# 语法# l.pop(index=-1)# 参数# index# 需要被删除返回的元素索引# 默认是-1# 也就对应着列表最后⼀个元素# 返回值# 被删除的元素# 注意# 会直接修改原数组# 注意索引越界nums = [1, 2, 3, 4]nums.pop() #默认-1print(nums)# remove# 作⽤# 移除列表中指定元素# 语法# l.remove(object)# 参数# object# 需要被删除的元素# 返回值# None# 注意# 会直接修改原数组# 如果元素不存在# 会报错# 若果存在多个元素# 则只会删除最左边⼀个# 注意循环内删除列表元素带来的坑nums = [1, 2, 2, 3, 4]nums.remove(2) #则只会删除最左边⼀个print(nums) #[1, 2, 3, 4]# ---------------------------------------------改----------------------------------------## names[index] = 666nums = [1, 2, 3]nums[1] = 5print(nums) #[1, 5, 3]#--------------------------------------------- 查----------------------------------------## 获取单个元素# items[index]# 注意负索引nums = [1, 2, 3]print(nums[-1]) # 3# 获取元素索引# index()nums = [1, 2, 5, 3, 4]print(nums.index(5)) # 2# 获取指定元素个数# count()nums = [1, 2, 5, 2, 3, 4]print(nums.count(2) ) #2# 获取多个元素# 切⽚# items[start:end:step]# 遍历# ⽅式1# 根据元素进⾏遍历# for item in list:# print(item)# ⽅式2# 根据索引进⾏遍历# for index in range(len(list)):# print(index, list[index])# ⽅式3(了解)# 创建对应的枚举对象# 概念# 通过枚举函数, ⽣成的⼀个新的对象# 作⽤# 函数⽤于将⼀个可遍历的数据对象(如列表、元组或字符串)组合为⼀个索引序列# 同时列出数据下标和数据# 语法# enumerate(sequence, [start=0])# sequence -- ⼀个序列、迭代器或其他⽀持迭代对象。
python中列表list的用法

python中列表list的用法Python中列表list是一种有序、可变、可重复数据类型。
以下是列表list的基本用法:1. 创建一个列表: 用中括号[]将元素括起来,元素之间用逗号隔开。
```pythonmy_list = [1, 2, 3, 4, 5]```2. 访问列表元素: 可以使用下标运算符[]访问列表元素,下标从0开始,负数表示从末尾开始。
```pythonprint(my_list[0]) # 输出1print(my_list[-1]) # 输出5```3. 切片操作: 可以使用切片操作符[:]访问列表中的部分元素。
```pythonprint(my_list[0:3]) # 输出[1, 2, 3]print(my_list[:3]) # 输出[1, 2, 3]print(my_list[3:]) # 输出[4, 5]```4. 修改元素: 可以使用下标运算符[]修改列表中的元素。
```pythonmy_list[0] = 0print(my_list) # 输出[0, 2, 3, 4, 5]```5. 列表长度: 使用len()函数获取列表的长度。
```pythonprint(len(my_list)) # 输出5```6. 添加元素: 可以使用append()方法在列表中添加一个元素。
```pythonmy_list.append(6)print(my_list) # 输出[0, 2, 3, 4, 5, 6]```7. 插入元素: 可以使用insert()方法在列表中插入一个元素。
```pythonmy_list.insert(1, 2.5)print(my_list) # 输出[0, 2.5, 2, 3, 4, 5, 6]```8. 移除元素: 可以使用remove()方法在列表中移除一个元素。
```pythonmy_list.remove(2.5)print(my_list) # 输出[0, 2, 3, 4, 5, 6]```9. 弹出元素: 可以使用pop()方法弹出列表中的一个元素。
python list 用法

python list 用法Python中的List(列表)是一个有序可变的数据结构,可以存储多个元素,可以是不同类型的数据,如数字、字符串、函数等。
以下是一些常见的Python List 用法:1.创建一个列表可以使用中括号[]来创建一个空的列表,也可以在中括号中添加元素来创建一个非空的列表。
```pythonempty_list = []non_empty_list = [1, 'a', 3.14, 'hello']```2.访问列表元素可以使用列表的索引来访问列表中的元素,列表的索引从0开始。
也可以使用负数索引来从列表末尾开始访问元素。
```pythonlst = [1, 2, 3, 4, 5]print(lst[0]) # 输出1print(lst[4]) # 输出5print(lst[-1]) # 输出5```3.添加和删除元素可以使用append()方法在列表末尾添加元素,使用insert()方法在指定位置插入元素,使用remove()方法删除指定元素,使用pop()方法删除并返回指定位置的元素。
```pythonlst = [1, 2, 3, 4, 5]lst.append(6)lst.insert(2, 'a')lst.remove(2)lst.pop(3)print(lst) # 输出[1, 3, 'a', 5, 6]```4.列表切片可以使用切片操作来获取列表的一个子集,可以指定起始位置、结束位置和步长。
```pythonlst = [1, 2, 3, 4, 5]print(lst[1:3]) # 输出[2, 3]print(lst[:3]) # 输出[1, 2, 3]print(lst[1:]) # 输出[2, 3, 4, 5]print(lst[::2]) # 输出[1, 3, 5]```5.列表排序可以使用sort()方法对列表进行排序,可以指定升序或降序。
python列表(list)的使用技巧及高级操作

python列表(list)的使⽤技巧及⾼级操作python列表(list)的使⽤技巧及⾼级操作置顶 2018年03⽉25⽇ 13:39:41 顽劣的⽯头阅读数:5478 标签: python extend bisect list enumerate 更多个⼈分类: python数据分析 Python版权声明:本⽂为博主原创⽂章,未经博主允许不得转载。
https:///shaxiaozilove/article/details/796851681、合并列表(extend)跟元组⼀样,⽤加号(+)将两个列表加起来即可实现合并:In [1]: x=list(range(1, 13, 2))In [2]: x + ['b', 'a']Out[2]: [1, 3, 5, 7, 9, 11, 'b', 'a']对于已定义的列表,可以⽤extend⽅法⼀次性添加多个元素:In [7]: x2=[3, 6, 1]In [8]: x.extend(x2)In [9]: xOut[9]: [1, 3, 5, 7, 9, 11, 3, 6, 1, 3, 6, 1, 3, 6, 1]需要说明的是:加号(+)执⾏列表的合并是⾮常浪费资源的,因为必须创建⼀个新列表并将所有对象复制过去,⽽⽤extend将元素附加到现有列表(尤其是在构建⼀个⼤列表时)就会好很多。
因此,在进⾏列表合并操作时,尤其是对于⼤数据量的列表合并,强烈建议使⽤extend函数。
2、列表排序(sort)列表的sort⽅法可以实现就地排序(⽆需创建新对象,字符串按⾸字母进⾏排序):In [10]: a=[1, 5, 3, -3, 0]In [11]: a.sort()In [12]: aOut[12]: [-3, 0, 1, 3, 5]In [13]: s=['a','ab','3e','z']In [14]: s.sort()In [15]: sOut[15]: ['3e', 'a', 'ab', 'z']sort有⼏个很好⽤的选项,⼀个是次要排序键,即⼀个能够产⽣可⽤于排序的值的函数。
python中列表取值用法

python中列表取值用法在Python中,列表(List)是一种有序的可变容器,用于存储多个元素。
列表提供了丰富的方法来取得其中的值,操作元素,以及进行切片等操作。
以下是关于Python中列表取值的用法的详细解释:1. 基本的索引取值在列表中,元素的位置是从0开始计数的。
通过索引,可以取得列表中特定位置的元素。
my_list =[10, 20, 30, 40, 50]element =my_list[2] # 获取索引为2的元素,结果是302. 负数索引除了正数索引,还可以使用负数索引从列表的末尾开始取值。
last_element =my_list[-1] # 获取最后一个元素,结果是503. 切片操作切片操作允许获取列表中的一部分元素,通过指定开始索引、结束索引和步长。
sub_list =my_list[1:4] # 获取索引1到3的元素,结果是[20, 30, 40]4. 使用步长在切片操作中,可以使用步长来跳过一定数量的元素。
every_second =my_list[::2] # 获取每隔一个元素,结果是[10, 30, 50]5. 获取列表长度可以使用len() 函数获取列表的长度。
length =len(my_list) # 获取列表长度,结果是56. 遍历列表使用for 循环可以遍历列表中的所有元素。
for item in my_list:print(item)7. 成员检查通过in 关键字可以检查某个元素是否在列表中。
check =40in my_list # 检查40是否在列表中,结果是True 8. 获取最大值和最小值使用max() 和min() 函数可以获取列表中的最大值和最小值。
max_value =max(my_list) # 获取最大值,结果是50min_value =min(my_list) # 获取最小值,结果是10列表解析是一种简洁的方式来创建新的列表或对现有列表进行处理。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第 I 条列表:
节 1.01创建列表的方式:
1使用赋值运算符直接创建列表
1.1Listname=[元素1,元素2,……,元素n]
2创建空列表
3创建数值列表
节 1.02删除列表del:
Is not defined 未被定义
注意:python自带垃圾回收机制,会自动销毁不用的列表,所以即使我们不手动删除,python 也会自动将其回收。
节 1.03访问列表元素:即获取列表中的内容
3种方法:1.直接使用print()输出2.索引Indexing 3.切片Slicing
Ctrl +S 保存文件
F5 运行文件
节 1.04遍历列表
方法:1.直接使用for循环(只能输出元素的值)
2.使用for循环和enumerate()函数(需要索引值时)
写两行的:
节 1.05添加元素或列表:
向列表里添加元素所用函数:
1. append(加到列表末尾)
Listname.append()
2.insert() (向列表中制定位置插入元素)
没有append的执行效率高
将一个列表添加到另一个列表中的函数extend()
(加到原列表的后面)
节 1.06修改元素:
找到索引值,直接修改就行
list1 = ['长亭外','古道边','芳草碧连天']
list1[2] = '一行白鹭上青天'
print(list1)
节 1.07删除元素
(a)根据索引删除
和删除列表相似,用del语句
del的使用:del listname[]
(语句放前面)
(b)根据元素值删除(不知道索引值时)
使用remove()方法
listname.remove()
(方法放后面)
节 1.08对列表进行统计
(a)获取制定元素出现的次数count() Llistname.coount(obj)
(b)获取制定元素首次出现的下标index() Listname.index(obj)
(c)统计数值列表的元素和sum()
Sum(iterable[,start])
针对的是数据列表
节 1.09对列表进行排序
对数值列表,字符串列表和中文列表进行排序
两种方法:
(a)使用列表对象的sort()方法
(i)实现排序后,原列表中的元素顺序改变
(ii)Listname.sort(key=None,reverse=False)
(iii)Flase表示升序(表示升序时,也可以不填),若为True,则为降序。
但要写成reverse = False/True,并且注意大小写(iv)对字符串进行排列时,先排大写开头的,然后按首字母顺序进行排列;若不想区分大小写,则写上
listname.sort(key=str.lower)
(b)使用内置的sorted()函数
(i)实现排序后,原列表的元素顺序不变
(ii)sorted(iterable,key=None,reverse=Flase)
iterable 指迭代对象,即列表名称
key=None 若设置成key=str,lower,即不区分大小写(后两项和soet的用法相同)
节 1.10列表推导式
列表推导式可以快速生成一个列表,或者根据某个列表生成满足指定需求的列表。
(a)建立表格的方法
方法一;
Import random
List1 = []
For i in range(10):
List1.append(random.randint(10,100))
Print(list1)
方法二:
Import random
List1 = [random.randint(10,100) for I in range(10)]
Print(list1)
(b)方法二即为列表推导式法
创建一个列表的表达式:list = [expression for var in range]
根据一个列表创建另一个列表的表达式:
newlist = [expression for var in list] (对全部元素进行处理)
newlist = [expression for var in list if condition] (选择原列表中的个别元素)。