Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/358.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/email/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python:将字符串拆分为元素并将它们添加到列表中_Python - Fatal编程技术网

Python:将字符串拆分为元素并将它们添加到列表中

Python:将字符串拆分为元素并将它们添加到列表中,python,Python,我有一个只有一个元素的列表,它本身就是一个元素列表 str = '"MARY","PATRICIA","LINDA","BARBARA","ELIZABETH","JENNIFER","MARIA","SUSAN","MARGARET","DOROTHY","LISA","NANCY","KAREN","BETTY","HELEN","SANDRA","DONNA","CAROL"' 现在,我希望该字符串中的每个名字都包含在另一个列表中。为此,我知道我必须单独拆分每个名称,然后将它们附加到所需

我有一个只有一个元素的列表,它本身就是一个元素列表

str = '"MARY","PATRICIA","LINDA","BARBARA","ELIZABETH","JENNIFER","MARIA","SUSAN","MARGARET","DOROTHY","LISA","NANCY","KAREN","BETTY","HELEN","SANDRA","DONNA","CAROL"'
现在,我希望该字符串中的每个名字都包含在另一个列表中。为此,我知道我必须单独拆分每个名称,然后将它们附加到所需的列表中。下面是我为同样的目的编写的代码:

str = '"MARY","PATRICIA","LINDA","BARBARA","ELIZABETH","JENNIFER","MARIA","SUSAN","MARGARET","DOROTHY","LISA","NANCY","KAREN","BETTY","HELEN","SANDRA","DONNA","CAROL"'
li = str.split()
c = li[0]
ip = []
start = c.find('"')
final = c.find('"', start+1)
def iter(start, final):
    e = c[start+1:final]
    ip.append(e)
nstart = c.find('"', final+1)
nfinal = c.find('"', nstart+1)
if(nstart == -1 or nfinal == -1):
    print ip
else:
    iter(nstart, nfinal)

然而,我没有得到任何输出ip'是我打算单独存储所有名称的列表。我的代码似乎有什么问题?

首先,调用
str
是不好的,因为
str
是python中的内置函数

第二,您可以通过以下方式完成:

in_list_string = '"MARY","PATRICIA","LINDA","BARBARA","ELIZABETH","JENNIFER","MARIA","SUSAN","MARGARET","DOROTHY","LISA","NANCY","KAREN","BETTY","HELEN","SANDRA","DONNA","CAROL"'
out_list= [element.strip('"') for element in in_list_string.split(',')]

首先,调用
str
是不好的,因为
str
是python中的内置函数

第二,您可以通过以下方式完成:

in_list_string = '"MARY","PATRICIA","LINDA","BARBARA","ELIZABETH","JENNIFER","MARIA","SUSAN","MARGARET","DOROTHY","LISA","NANCY","KAREN","BETTY","HELEN","SANDRA","DONNA","CAROL"'
out_list= [element.strip('"') for element in in_list_string.split(',')]

您的代码比需要的复杂得多。您可以使用注释,或者执行以下操作:

foo = '"MARY","PATRICIA","LINDA","BARBARA","ELIZABETH","JENNIFER","MARIA","SUSAN","MARGARET","DOROTHY","LISA","NANCY","KAREN","BETTY","HELEN","SANDRA","DONNA","CAROL"'
output = foo.replace('"','').split(",")

您的代码比需要的复杂得多。您可以使用注释,或者执行以下操作:

foo = '"MARY","PATRICIA","LINDA","BARBARA","ELIZABETH","JENNIFER","MARIA","SUSAN","MARGARET","DOROTHY","LISA","NANCY","KAREN","BETTY","HELEN","SANDRA","DONNA","CAROL"'
output = foo.replace('"','').split(",")
用于csv数据:

>>> import csv
>>> from StringIO import StringIO
>>> dont_call_me_str='"MARY","PATRICIA","LINDA","BARBARA","ELIZABETH","JENNIFER","MARIA","SUSAN","MARGARET","DOROTHY","LISA","NANCY","KAREN","BETTY","HELEN","SANDRA","DONNA","CAROL"'
>>> list(csv.reader(StringIO(dont_call_me_str)))
[['MARY', 'PATRICIA', 'LINDA', 'BARBARA', 'ELIZABETH', 'JENNIFER', 'MARIA', 'SUSAN', 'MARGARET', 'DOROTHY', 'LISA', 'NANCY', 'KAREN', 'BETTY', 'HELEN', 'SANDRA', 'DONNA', 'CAROL']]
用于csv数据:

>>> import csv
>>> from StringIO import StringIO
>>> dont_call_me_str='"MARY","PATRICIA","LINDA","BARBARA","ELIZABETH","JENNIFER","MARIA","SUSAN","MARGARET","DOROTHY","LISA","NANCY","KAREN","BETTY","HELEN","SANDRA","DONNA","CAROL"'
>>> list(csv.reader(StringIO(dont_call_me_str)))
[['MARY', 'PATRICIA', 'LINDA', 'BARBARA', 'ELIZABETH', 'JENNIFER', 'MARIA', 'SUSAN', 'MARGARET', 'DOROTHY', 'LISA', 'NANCY', 'KAREN', 'BETTY', 'HELEN', 'SANDRA', 'DONNA', 'CAROL']]

namelist=nameStr[1:-1]。拆分(“,”)
?此字符串来自何处?这看起来很像CSV文件的一行。我从正在使用的文件中获取了该字符串。问题是,如果它是CSV文件,则有一个完整的内置模块用于读取它们。
namelist=nameStr[1:-1]。拆分(“,”)
?该字符串来自何处?这看起来很像CSV文件的一行。我从正在处理的文件中获得了该字符串。关键是,如果它是CSV文件,则有一个完整的内置模块用于读取它们。