2024-09-30 12:21:04 发布
网友
我想知道您是否有字符串列表,例如:
l = ['ACGAAAG', 'CAGAAGC', 'ACCTGTT']
如何将其转换为:
O = 'ACGAAAG' P = 'CAGAAGC' Q = 'ACCTGTT'
你能在不知道列表中的项目数的情况下做这件事吗?必须将它们存储为变量。 (变量无关紧要。)
欢迎来到SE!你知道吗
如果您知道字符串的结构,那么您可以简单地将其解包:
O, P, Q = my_list
使用for循环打开列表。对循环中的每个字符串进行处理。对于以下内容,我只是打印每一个:
for element in l: print(element)
祝你好运!你知道吗
a,b,c = my_list
只要列表中的元素数等于要解压的变量数,这就可以工作,它实际上可以处理任何iterable、tuple、list、set等
如果列表较长,您可以随时访问前3个元素,如果这是您想要的
a = my_list[0] b = my_list[1] c = my_list[2]
或者在一条线上
a, b, c = my_list[0], my_list[1], my_list[2]
更好的是,使用slice表示法,您可以得到包含前3个元素的右边子列表
a, b, c = my_list[:3]
只要列表的大小至少是3,或者变量的数量是你想要的,这些都可以工作
您还可以使用扩展的解包表示法
a, b, c, *the_rest = my_list
剩下的将是一个列表,列表中除了前3个元素以外的所有其他元素,同样,列表的大小必须是3或更多
这几乎涵盖了提取一定数量的项目的所有方法
现在取决于你将要用它们做什么,你可能会用一个常规的循环更好
for item in my_list: #do something with the current item, like printing it print(item)
在每个迭代中,item将获取列表中一个元素的值,以便您在一次执行一个item时执行所需的操作
如果您想要的是在每次迭代中同时获取3个项目,那么有几种方法可以做到这一点
比如说
for i in range(3,len(my_list),3) a,b,c = my_list[i-3:i] print(a,b,c)
有更多有趣的构造像
it = [iter(my_list)]*3 for a,b,c in zip(*it): print(a,b,c)
其他的则与itertools模块有关。你知道吗
但是现在你说了一些有趣的事情,每个术语都被分配给一个变量,这是错误的方法,你不希望一个未知数量的变量很快变得混乱,你要处理列表,如果你想处理每个元素,有很多方法,比如列表理解你知道吗
my_new_list = [ some_fun(x) for x in my_list ]
还是老办法
my_new_list = [] for x in my_list: my_new_list.append( some_fun(x) )
或者,如果您需要同时处理多个项目,请将其与上述部分结合使用
如果您事先不知道项目的数量,那么列表就是用来保存项目的正确结构。你知道吗
不过,您可以切掉一些已知的项目,并将未知的尾部作为一个列表:
a, b, *rest = ["ay", "bee", "see", "what", "remains"] print("%r, %r, rest is %r" % (a, b, rest))
欢迎来到SE!你知道吗
结构已知
如果您知道字符串的结构,那么您可以简单地将其解包:
结构未知
使用for循环打开列表。对循环中的每个字符串进行处理。对于以下内容,我只是打印每一个:
祝你好运!你知道吗
只要列表中的元素数等于要解压的变量数,这就可以工作,它实际上可以处理任何iterable、tuple、list、set等
如果列表较长,您可以随时访问前3个元素,如果这是您想要的
或者在一条线上
更好的是,使用slice表示法,您可以得到包含前3个元素的右边子列表
只要列表的大小至少是3,或者变量的数量是你想要的,这些都可以工作
您还可以使用扩展的解包表示法
剩下的将是一个列表,列表中除了前3个元素以外的所有其他元素,同样,列表的大小必须是3或更多
这几乎涵盖了提取一定数量的项目的所有方法
现在取决于你将要用它们做什么,你可能会用一个常规的循环更好
在每个迭代中,item将获取列表中一个元素的值,以便您在一次执行一个item时执行所需的操作
如果您想要的是在每次迭代中同时获取3个项目,那么有几种方法可以做到这一点
比如说
有更多有趣的构造像
其他的则与itertools模块有关。你知道吗
但是现在你说了一些有趣的事情,每个术语都被分配给一个变量,这是错误的方法,你不希望一个未知数量的变量很快变得混乱,你要处理列表,如果你想处理每个元素,有很多方法,比如列表理解你知道吗
还是老办法
或者,如果您需要同时处理多个项目,请将其与上述部分结合使用
如果您事先不知道项目的数量,那么列表就是用来保存项目的正确结构。你知道吗
不过,您可以切掉一些已知的项目,并将未知的尾部作为一个列表:
相关问题 更多 >
编程相关推荐