gpt4 book ai didi

python - 自创建模块用于异步导入

转载 作者:太空宇宙 更新时间:2023-11-03 18:43:13 25 4
gpt4 key购买 nike

我有一个关于自创建模块的问题。我正在编写一个非常动态的脚本,该脚本基于用户 key 和 key 字典,生成一个包含字典的函数。

我的问题与自行创建模块的最佳实践有关。显然我可以打开并写入 .py 文件,但是这样做的最佳格式是什么?我使用相同的格式生成了大型 SQL 查询文档,尽管我知道它很容易受到注入(inject)。我在一个非常受控的环境中工作,并且有一个字符串验证语句,所以我不太担心。

我知道模块也有同样的作用,但我真的不想让自己养成以这种方式编码的坏习惯。

with open('keystruct.py', 'w+') as KeyStruct:
KeyStruct.write('''
def KeyAssignments(referencekey):''')
KeyStruct.write('''
ReferenceKey = {}'''.format(CharacterKeyList)) # Ignore indentation for this line.
print(CharacterKeyList)

没有比现在更好的时间来学习如何正确做事了,不是吗?

此外,如果上述内容被认为是“好的”,那么如果它仅用于自引用,那么在一行上定义 50 多个对象的单个字典是否通常可以接受?

上述语句的输出是这样的:

...    
ReferenceKey = ['A = 0', 'B = 1', 'C = 2', 'D = 3', 'E = 4', 'F = 5', 'G = 6', 'H = 7', 'I = 8', 'J = 9', 'K = 10', 'L = 11', 'M = 12', 'N = 13', 'O = 14', 'P = 15', 'Q = 16', 'R = 17', 'S = 18', 'T = 19', 'U = 20', 'V = 21', 'W = 22', 'X = 23', 'Y = 24', 'Z = 25', 'a = 26', 'b = 27', 'c = 28', 'd = 29', 'e = 30', 'f = 31', 'g = 32', 'h = 33', 'i = 34', 'j = 35', 'k = 36', 'l = 37', 'm = 38', 'n = 39', 'o = 40', 'p = 41', 'q = 42', 'r = 43', 's = 44', 't = 45', 'u = 46', 'v = 47', 'w = 48', 'x = 49', 'y = 50', 'z = 51', '0 = 52', '1 = 53', '2 = 54', '3 = 55', '4 = 56', '5 = 57', '6 = 58', '7 = 59', '8 = 60', '9 = 61']

最佳答案

不要尝试动态生成代码,而是尝试将功能与数据分开。将数据转储为 JSON 之类的内容,然后使用函数工厂或类来加载和使用您创建的各种配置。

关于python - 自创建模块用于异步导入,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20079510/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com