我有一份表格的清单
['A', 'B', 'C', 'D']
我想变异成:
[('Option1','A'), ('Option2','B'), ('Option3','C'), ('Option4','D')]
我可以迭代原始列表并成功地进行变异,但最接近我想要的是:
["('Option1','A')", "('Option2','B')", "('Option3','C')", "('Option4','D')"]
我需要单引号,但不希望每个列表都有双引号。在
[编辑]-这是我用来生成列表的代码;尽管我已经尝试了许多变体。显然,我已经把'element'变成了一个字符串——显然,我在这里没有正确地思考它。在
array = ['A', 'B', 'C', 'D']
listOption = 0
finalArray = []
for a in array:
listOption += 1
element = "('Option" + str(listOption) + "','" + a + "')"
finalArray.append(element)
任何帮助都将不胜感激。在
[编辑]-有人问我为什么要这样做。最后一个数组将被送入一个应用程序(Indigo home control server),以填充配置对话框中的下拉列表。在
元组不同于字符串,因为元组是一个不可变的列表。你可以通过写下:
^{pr2}$您可能将t定义为一个字符串
"(something, something_else)"
,它由表达式周围的引号表示。我就是这样做的,但老实说,我可能会尽量不这么做,而是想知道我为什么要这么做。任何时候,当你在变量中加入一个数字(或者在这个例子中,一个元组包含一个数据元素和一个元素以数字命名数据)的时候,你应该考虑如何组织你的消费代码而不需要它。
例如:当我开始专业编写代码时,我工作的公司有一个问题,就是在我们的一些地方没有及时清除文件。注意,不是所有的文件,只有一些。为了向我们的软件开发人员提供解决问题的信息,我们需要一个文件列表,其中清除过程失败的站点。
因为我还没做好准备,所以我没有做一些明智的事情,比如用文件的键和大小的值来制作字典,而是使用}等等,每个文件一个,然后我把它们和
locals()
来创建有意义的新变量。不要这样做,你的变量对任何人都没有意义,除了未来的程序员。基本上,我有一大堆变量,名为"J_ITEM"
和{[item for item in locals() if item.startswith("J_")]
一起分组。太疯狂了!不要这样做,而是构建一个更合理的数据结构。也就是说,我对你怎么把它们组合在一起很感兴趣。你介意通过编辑你的答案来分享你的代码吗?也许我们可以一起研究一个比这个黑客工作更好的解决方案。
除了adsmith很好的答案之外,我还要加上
map
方式:相关问题 更多 >
编程相关推荐