python转为list
A. python里面如何实现tuple和list的转换
list(列表):list是一种有序的集合,可以随时添加和删除其中的元素。
tuple(元祖):tuple和list非常类似,但是tuple一旦初始化就不能修改,比如同样是列出同学的名字:
tuple转list
python3下运行
list和tuple是Python内置的有序集合,一个可变,一个不可变。
B. python字典转换为list后选中最后一个值
设为星标,第一时间获取更多干货
在python中,数据类型主要由以下几类组成:
列表(list): [a, b]
元组(tuple):(a, b, )
集合(set): {a, b}
字典(Dictonary): {a: ‘aaa’, b: ‘bbb’}
1. 列表
列表(List)
列表是Python中使用最频繁的数据类型,专门用于存储一串信息
列表是一种有序和可更改的集合。允许重复的元素
列表使用[]定义,元素之间使用,分隔。例:[1,2, ...]
列表的索引从位置0开始
索引就是元素在列表中的位置编号,索引又可以被称为下标
注意:从列表中取值时,如果超过索引范围,程序会报错
虽然列表可以存储不同类型元素,但是曰常中一般存储相同类型的元素
如何使用列表
列表[索引]: 从列表中取值,获取指定索引的元素
列表[开始索引:结束索引:步长]:
返回从开始索引到结束索引-1的列表,如果设置步长,按步长跳过元素
len(列表): 获取列表的长度
元素 in 列表: 判断元素是否在列表中
列表.count(元素): 返回指定元素在列表中的个数
列表.index(元素): 返回指定元素在列表中第一次出现的索引,查找失败时报错
列表.sort(): 从小到大排序,括号内增加reverse=True ,则是从大到小排序
列表_reverse(): 逆序(反转)列表
列表.clear(): 清空列表
Eg:
# 0 init listL = [1, 2, 3, 4, 5, 7, 6]# 1 index valueL[1] # --> 2# 2 stepL[2: 5: 2] # --> [3, 5]# 3 lengthlen(L) # --> 6# 4 in6 in L # ---> True8 in L # ---> False# 5 countL.count(1) # ---> 1# 6 indexL.index(2) # ---> 1# 7 sortL.sort() # ---> [1, 2, 3, 4, 5, 6, 7] 注意:会改变自己 返回None # 8 reverseL.reverse() # 由于第7步改变了自己, 这里变成[7, 6, 5, 4, 3, 2, 1] 会改变自己 返回None # 9. clearL.clear() # ---> []
列表特有的一些使用方法
L = [1, 2, 3, 4, 5]
列表[索引]=元素:修改指定索引的元素,索引不存在会报错
L[2] = 7 L # ---> [1, 2, 7, 4, 5]
列表 . append(元素):在列表的末尾追加元素
L.append(6)L # ---> [1, 2, 7, 4, 5, 6]
列表 . insert(索引,元素):在指定索引位置插入元素,索引不存在时在末尾追加
L.insert(3, 9)L # ---> [1, 2, 7, 4, 9, 5, 6]
列表.pop(索引):
删除并返回指定索引的元素,未指定索引时删除最后一项,索引不存在时报错
L.pop(3) # 4, L 变成[1, 2, 7, 9, 5, 6]L.pop() # 6, L 变成[1, 2, 7, 9, 5]
列表 . remove(元素):删除列表中第一个出现的指定元素,查找失败时报错
L.remove(2) # L 变成[1, 7, 9, 5]
del 列表[索引]: 删除指定索引位置的元素,索引不存在时报错
del L[3] # L 变成[1, 7, 9]
列表l.extend(列表2): 将列表2拼接在列表1后
L.extend([8, 9, 10]) L # L 变成[1, 7, 9, 8, 9, 10], 等价于 L = L + [8, 9, 10]
2. 元组
元组(Tuple)
元组是一种有序且不可更改的集合, 允许重复的成员
元组与列表的类似,不同之处在于元组元素不可修改
元组使用()定义,元素之间使用,分隔。例:(a, b, …)
元组中只包含一个元素时,可以省略(),只需要在元素后加逗号
init_tuple = 100,type(init_tuple) # ---> tuple# ---- 另外写法init_tuple = (100, ) # 逗号一定要加
注意:如果一个非元组类型的数据突然变成元组,检查是不是误加了逗号
集合与元组的通用方法
元组[索引]:从元组中取值,获取指定索弓丨的元素
元组[开始索引:结束索引:步长]:
返回从开始索引到结束索引-1的元组,如果设置步长,按步长跳过元素
len(元组):获取元组的长度
元素in元组:判断元素是否在元组中
元组.count(元素):返回指定元素在元组中的个数
元组.index(元素):返回指定元素在元组中第一次出现的索引,查找失败会报错
元组和列表之间的转换
list(元组):将元组转换成列表
tuple(列表): 将列表转换成元组
3. 集合
集合(Set)
集合是一种无序和无索引的序列。没有重复的元素
集合会自动删除重复的元素,一般应用于去重、交并差运算场景
集合使用{}定义,元素之间使用,分隔。例:{a, b, …}
集合与列表的通用方法
len(集合):获取集合的长度
元素in集合:判断元素是否在集合中
集合.clear(): 清空集合
集合特有的使用方法
s = {1, 2, 3}
集合.add(元素):将元素添加到集合中
s.add(5) # ---> {1, 2, 3, 5}
集合1.update(集合2): 添加新的元素或集合到当前集合中
s.add{4, 5, 6} # ---> {1, 2, 3, 5, 4, 6}
集合.remove(元素): 删除指定的元素,元素不存在时报错
s.remove(4) # ----> {1, 2, 3, 5, 6}
集合1&集合2 : 交集,获得由集合1和集合2中都存在的元素组成的新集合
s & {3, 4, 5} # ---> {3, 5}
集合1|集合2: 并集,获得集合1和集合2中所有元素的新集合
s | {8, 9, 10} # ---> {1, 2, 3, 5, 6, 8, 9, 10}
集合1 - 集合2 : 差集,获得在集合1中存在但是在集合2中不存在的元素集合
s - {9, 10} # ---> {1, 2, 3, 5, 6, 8}
集合和列表之间的转换(也可以和元组进行转换,方式类似)
list(集合):将集合转换成列表
set(列表):将列表转换成集合
C. python如何把txt中的数字提取出来放到list中,要求格式是int,而不是原始的str
txt里面文件信息 文件名 1.txt
代码如下:
with open("1.txt","r") as f:
t1 = f.readline()
#t2 = f.readline() #第二行 可以使用循环 或者读取全部
txt = t1.strip().replace(" ",",") #去除前后多余空格,替换中间空格为逗号
text = eval(txt) #可以直接转列表
lit = list(text)
print(text,lit, type(t1))
D. python 读取文件转换为列表
python 读取文本文件内容转化为python的list列表,案例如下:
1、目的
读取cal.txt内容,然后通过python脚本转化为list内容
2、文件内容
cal.txt
12
13
14
15
16
3、Python编写cal.py脚本内容
#!/usr/bin/python
#coding=UFT-8
result=[]
fd=file("cal.txt","r")
forlineinfd.readlines():
result.append(list(map(int,line.split(','))))
print(result)
foriteminresult:
foritinitem:
printit
4、执行转换为List列表结果内容:
[[12],[13],[14],[15],[16]]
12
13
14
15
16
E. python中,读取文件,希望转化为列表的格式,出现了问题
defloadDataSet(filename):
dataMat=[]
fr=open(filename)
forlineinfr.readlines():
line=line.replace('"','')
curLine=line.strip().split(' ')
aa=[float(i)foriincurLine]
dataMat.append(aa)
returndataMat
dataMat=loadDataSet('test.txt')
print(dataMat)
F. 怎么用python语言将字符串转换成list
list = list(str)
G. Python3 字符串str和列表list转换
>>> str1 = "abcdefg"
>>> list1 = list(str1)
>>> print(list1)
['a', 'b', 'c', 'd', 'e', 'f', 'g']
>>> str4 = "username=admin&passsword=123456"
>>> list4 = str4.split("&")
>>> print(type(list4))
<class 'list'>
>>> print(list4)
['username=admin', 'passsword=123456']
如果我们要对多个字符进行分割,那么可以使用内置模块 re.split() 方法。
>>> str5 = "username=admin&passsword=123456"
>>> import re
>>> list5 = re.split("&|=", str5)
>>> print(type(list5))
<class 'list'>
>>> print(list5)
['username', 'admin', 'passsword', '123456']
>>> import json
>>> str3 = '["aaa", "bbb", "ccc", "ddd"]'
>>> list3 = json.loads(str3)
>>> print(type(list3))
<class 'list'>
>>> print(list3)
['aaa', 'bbb', 'ccc', 'ddd']
>>> str2 = "['aaa', 'bbb', 'ccc', 'ddd']"
>>> list2 = eval(str2)
>>> print(type(list2))
<class 'list'>
>>> print(list2)
['aaa', 'bbb', 'ccc', 'ddd']
针对str2,json.loads()方法为何失灵了?
因为 json.loads() 将json格式字符串转换为python对象,而按 json 的标准规范应该使用双引号,如果使用单引号会导致报错。
# 注意,转换之后,双引号会变为单引号
>>> list1 = ["aaa", 123, 'ccc', True]
>>> str1 = str(list1)
>>> print(type(str1))
<class 'str'>
>>> print(str1)
['aaa', 123, 'ccc', True]
>>> list3 = ['username=admin', 'passsword=123456']
>>> str3 = "&".join(list3)
>>> print(type(str3))
<class 'str'>
>>> print(str3)
username=admin&passsword=123456
# 这里列表中使用了单引号
>>> list4 = ['username=admin', 'passsword=123456']
>>> import json
>>> str4 = json.mps(list4)
>>> print(type(str4))
<class 'str'>
>>> print(str4)
["username=admin", "passsword=123456"]
Python3下字典、字符串及列表的相互转换
H. python列表中的字符串,怎么转化成列表
首先我们打开JUPYTER NOTEBOOK,新建一个空白的PYTHON文档。当然也可以用其它编译器的。
I. python怎么把int类型转换成列表
python中把int类型转换成列表的方法:首先将整数转换为字符串;然后输入【map((int,str(num))】命令转换为列表即可。
首先将整数转换为字符串,然后使用map()函数转换:
或者使用如下方法:
推荐课程:Python 手册
J. python3 16进制字符串、列表、字符串之间的转换
在Python操作数据内容时,多数情况下可能遇到下面3种类型的数据处理:
hexstring 如:ƇC532145697A8B6F'
str 如:'x1Cx53x21x45x69x7Ax8Bx6F'
list 如:[0x1C, 0x53, 0x21, 0x45, 0x69, 0x7A, 0x8B, 0x6F]
各种第三方模块(如pyDes),或者自己写的接口中,可能存在由于类型不统一需要在这3种数据中来回切换的情况。
需要用到的核心的方法如下:
list() 将对象转换为list
str() 将对象转换为str
bytearray() 将对象转换为bytearray
bytearray.fromhex() 将对象从hexstring转换为bytearray
binascii.b2a_hex() 将对象从str转换为hexstring
如:[0x53, 0x21, 0x6A] -> 'x53x21x6a'
方法:list -> bytearray -> str
如:'x53x216a' -> [0x53, 0x21, 0x6A]
方法:逐个字符转成十进制
如: [0x53, 0x21, 0x6A] -> A'
方法:list -> bytearray -> str -> hexstring
如: A' -> [0x53, 0x21, 0x6A]
方法:hexstring -> bytearray -> list
如: A' -> 'x53x21x6A'
方法:hexstring -> bytearray -> str
以上内容转自: https://blog.csdn.net/diaoxuesong/article/details/72123415#