我想知道最简单的方法是将string如下列表转换为list:
x = u'[ "A","B","C" , " D"]'
Run Code Online (Sandbox Code Playgroud)
即使用户在逗号和引号内的空格之间放置空格也是如此.我需要处理它:
x = ["A", "B", "C", "D"]
Run Code Online (Sandbox Code Playgroud)
在Python中.
我知道我可以剥夺的空间与strip()和split()使用拆分操作和检查非字母.但是代码变得非常糟糕.有一个我不知道的快速功能吗?
我试图将文本文件的行读入python中的列表或数组.我只需要能够在创建后单独访问列表或数组中的任何项目.
文本文件的格式如下:
0,0,200,0,53,1,0,255,...,0.
Run Code Online (Sandbox Code Playgroud)
如果在...上面,那么实际的文本文件有数百或数千个项目.
我正在使用以下代码尝试将文件读入列表:
text_file = open("filename.dat", "r")
lines = text_file.readlines()
print lines
print len(lines)
text_file.close()
Run Code Online (Sandbox Code Playgroud)
我得到的输出是:
['0,0,200,0,53,1,0,255,...,0.']
1
Run Code Online (Sandbox Code Playgroud)
显然,它将整个文件读入只有一个项目的列表,而不是单个项目的列表.我究竟做错了什么?
我正在以这种格式读取文件中的数据行:
['A', 'B', 'C', 'D', 'E']
['1', '2', '3', '4', '5']
Run Code Online (Sandbox Code Playgroud)
...等等
但是,当我这样做时type(dataInput[0]),它会告诉我它来自类型字符串.虽然它看起来像带括号和所有的列表.如何dataInput[0]直接进入列表而不是字符串?
这是一些代码:
fobj = open(selectedCase, 'r').read()
dataInput = re.split('\n', fobj)
Run Code Online (Sandbox Code Playgroud)
我见过如下的线程: 如何在Python中将逗号分隔的字符串转换为列表? 但是,该示例在字符串中没有括号.
我被迫在我的一个输入参数中使用逗号分隔来分隔多个值.所以我最终得到了
my_string = ['a,b,c']
Run Code Online (Sandbox Code Playgroud)
我怎么能这样转换
my_new_string = ['a', 'b', 'c']
Run Code Online (Sandbox Code Playgroud) 我只是遇到一个未解决的解决方案;)
我想将一个字符串放入列表列表中。
string = r'ABC:=[[0,0,110],[1,0,0,0],[1,0,0,0],[9e+09,9e+09,9e+09,9e+09,9e+09,9e+09]];'
new_string = string.strip().split('=')
# now new_string[1][:-1] does look like a list of lists but everything i tried i just got a string.
Run Code Online (Sandbox Code Playgroud)
也许这里有人知道我该如何获得它
data = [[0,0,110],[1,0,0,0],[1,0,0,0],[9e+09,9e+09,9e+09,9e+09,9e+09,9e+09]]
Run Code Online (Sandbox Code Playgroud)
谢谢