所以,首先要明确一点。
字符串是一种变量类型。在 Python 中,您可以通过将某些文本用单引号或双引号括起来来创建字符串。
"This is a string"
'So is this. It can have number characters: 123. Or any characters: !@#$'
字符串是可以分配给变量的值。所以你通过给它一个名字来使用一个字符串:
my_string = "This is a string"
another_string = "One more of these"
您可以对字符串执行不同类型的操作,例如将它们与+
运算符连接起来
new_string = my_string + another_string
您可以创建字符串列表:
list_of_strings = [new_string, my_string, another_string]
看起来像["This is a stringOne more of these", "This is a string", "One more of these"]
。
要在循环中创建多个字符串,您需要一个地方来存储它们。列表是一个很好的候选:
list_of_strings = []
for i in range(1, 11):
list.append("onet_reported_" + i)
但我认为你想要的是将变量命名为“onet_reported_x”,以便最终得到相当于:
onet_reported_1 = row[1]
onet_reported_2 = row[2]
等等,而不必输入所有多余的代码。这是一种很好的直觉。做这种事情的一个好方法是创建一个字典,其中键是您想要的字符串名称,值是row[i]
's。您可以循环执行此操作:
onet_dict = {}
for i in range(1, 11):
onet_dict["onet_reported_" + i] = row[i]
或使用字典理解:
onet_dict = {"onet_reported_" + i: row[i] for i in range(1,11)}
两者都会给你相同的结果。现在您有了一个字符串集合,其中包含您想要的名称作为 dict 的键,这些键映射到您希望它们关联的行值。要使用它们,而不是直接引用名称onet_reported_x
,您必须访问 dict 中的值,例如:
# Adding some other value to onet_reported_5. I'm assuming the values are numbers.
onet_dict["onet_reported_5"] += 20457