gpt4 book ai didi

python - 如何利用字典理解来限制其创建?

转载 作者:行者123 更新时间:2023-11-30 22:57:54 25 4
gpt4 key购买 nike

所以我想创建一个根据输入创建字典的方法。 3 个不同的字典,其中键 0-9 表示十进制,键 0-7 表示八进制,键 0-F 表示十六进制。我使用包含 0-F 项的字符串作为创建键的方式,并且根据用于创建的文件(不同的数字系统使用不同的文件),它将使用适当的键创建字典。

我的问题是,对于八进制和十进制文件,如何使用字典理解来限制要创建的键的数量?因此 fileDec 将在键 9 处停止,而 fileOct 将在键 7 处停止。现在它会创建一个包含所有 16 个键的字典。

def create_dictionary(file):
if file == fileDec:
sortBins = {item : [] for item in dictionIndexes}
return sortBins
elif file == fileOct:
print("Oct")
elif file == fileHex:
print("Hex")

mainBin = []
dictionIndexes = "0123456789ABCDEF"
sortBins = {}

fileDec = open("Number Lists/random_numbers10.txt")
fileDec.close()
fileOct = open("Number Lists/random_numbers4.txt")
fileOct.close()
fileHex = open("Number Lists/random_numbers3.txt")
fileHex.close()

sortBins = create_dictionary(fileDec)

for item in dictionIndexes:
print(item, sortBins[item])

print(len(dictionIndexes))

最佳答案

由于 dictionIndexes 已排序,因此您可以仅使用子列表(好吧,子字符串)作为十进制/八进制键)

def create_dictionary(file):
if file == fileDec:
sortBins = {item : [] for item in dictionIndexes[:10]}
return sortBins
elif file == fileOct:
sortBins = {item : [] for item in dictionIndexes[:8]}
return sortBins
elif file == fileHex:
sortBins = {item : [] for item in dictionIndexes}
return sortBins

关于python - 如何利用字典理解来限制其创建?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36420415/

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