【发布时间】:2023-03-14 04:36:01
【问题描述】:
是否可以将变量(例如字符串)传递给 python 中的函数,然后将其用作列表的名称?如何转换?
def compare(string_variable, filename):
with open(filename) as fr:
for line in fr:
variable.writelines(line)
compare(string_variable , filename)
——编辑——
这不是完整的代码,甚至不是实际的代码,因为我想简化它以使我的问题尽可能狭窄。我看到我在编写 string.writlines 等时犯了一个愚蠢的错误。下面是伪代码的更正版本,速度非常快,如果我犯了任何错误,请见谅
我正在尝试做的是将一个字符串变量传递给一个函数,将此变量用作一个列表,将行添加到它并将其保存在内存中以供以后比较。这将通过基于 dict key: value 的循环来完成,所以我希望我的列表具有类似于 dict 中的键值的名称,以便在每次循环时生成一个不同命名的列表。
类似:
x = {
key: value
key2: value2
}
def compare(key, filename):
with open(filename) as fr:
for line in fr.readlines():
key_but_as_list.append(line)
for key in x.keys()
compare(key, filename)
你现在明白我的想法了吗?
【问题讨论】:
-
是的,这是可能的。但首先为什么?
-
我正在遍历一个具有 "type": "filename" 的字典
-
您的代码实际上有很多错误。变量未定义,writelines 是一个文件属性,你不能只迭代 fr 等等。你想做什么?
-
有很多优秀的 Python 基础学习指南
-
老兄,这个答案没有帮助
标签: python string list function parameter-passing