Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/342.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/8/variables/2.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_Variables_Split - Fatal编程技术网

在python中将变量拆分为多个变量

在python中将变量拆分为多个变量,python,variables,split,Python,Variables,Split,在python中,我有一个包含两行内容的变量,我想将其拆分为两个不同的变量。我还希望它可以对任意数量的行执行此操作,例如,我可以更改行数,它会自动将其拆分为有多少行。我该怎么做呢?如下所示 >>> a="""this is a multiline string""" >>> for eachline in a.split('\n'): print(eachline) this is a multiline string 拆分字符串时,它将转换为列表 >

在python中,我有一个包含两行内容的变量,我想将其拆分为两个不同的变量。我还希望它可以对任意数量的行执行此操作,例如,我可以更改行数,它会自动将其拆分为有多少行。我该怎么做呢?

如下所示

>>> a="""this is a
multiline
string"""
>>> for eachline in a.split('\n'): print(eachline)

this is a
multiline
string

拆分字符串时,它将转换为列表

>>> split_list=a.split('\n')
>>> split_list
['this is a', 'multiline', 'string']
然后你可以通过

>>> var1=split_list[0]
>>> var1
'this is a'
等等。。。 否则,您可以运行for循环来获取列表中的每一项

for eachline in a.split('\n'): print(eachline)

如果您有时不确定有多少行,您将被迫动态创建变量名不要这样做。这几乎总是错误的方法,而且还有更好的方法

相反,使用
.split()
直接生成的列表,并处理其中的数据

如果需要将字符串中的每一行进一步拆分为两部分,可以使用嵌套列表。下面是一个简单的方法示例,我认为您应该改为使用:

# your input string
string = "first line\nsecond line\nthird line\nfourth line"

# use a list to store your data, and proccses it instead.
data = []

for line in string.split('\n'):
    # split each line into two parts.
    first_part, second_part = line[:-4], line[-4:]
    data.append([first_part, second_part])

# data:
#
# [['first ', 'line'], 
# ['second ', 'line'], 
# ['third ', 'line'], 
# ['fourth ', 'line']]  
print(data)

您可以使用特定索引访问
数据的每个部分。例如,如果要处理
字符串的第一行
,可以使用
数据[0]
,该数据产生
['first','line']
假设您引用的是字符串:
string.split('\n')
。然而,如果有时不知道有多少行,就必须动态创建变量名,这几乎总是一个坏主意。相反,请使用
.split()
直接生成的列表。这对我以后要做的事情不起作用。对于每一行,我想得到最后4个字符用于一件事,其余的用于另一件事。所以我需要每一行作为一个不同的变量。除非有另一种方法,否则我如何将每一行放入不同的变量中。例如,a1=这是一个b1=多行c1=string而不是创建问题的新答案,编辑现有问题并删除此问题。AttributeError:“list”对象没有属性“split”@IanStegner我不确定你在说什么。您能详细说明一下吗?我在这一行得到了错误:对于string.split('\n'):当我将数据放入时。@IanStegner您的数据是列表还是字符串?我假设您的数据是字符串。['@HISzISzAzTESTzMESSAGEb;9763\n','.88OQYN8VSN!31PWS7NO8N2332p;7502\n','7XKF5U1FXKGJ5FZUFGZZGIQfF,*0lF[NXYh;4400']这是我的数据