我不知道此错误是由什么引起的,或者如何解决。
基本上,我想要实现的是从.csv文件中读取内容,并根据其中的信息制作字典。我以前做过没有任何问题,但是这次确实很奇怪。
#Read External Data
DataNames = os.listdir("Data")
#Import Classes
ClassesPath = os.path.join("Data", DataNames[1])
Classes = open(ClassesPath)
global ClassesDict
ClassesDict = csv.DictReader(Classes, delimiter=",")
Run Code Online (Sandbox Code Playgroud)
尝试跑步时
print(ClassesDict)
Run Code Online (Sandbox Code Playgroud)
要么
print(ClassesDict["ID"])
Run Code Online (Sandbox Code Playgroud)
它总是给我错误:
TypeError: 'DictReader' object is not subscriptable
Run Code Online (Sandbox Code Playgroud)
我确实知道列表,字典等是可下标的对象,但是我的变量“ ClassesDict” 是(或应该是)字典。
提前非常感谢您。
我有一个小问题,其中变量似乎没有被正确定义为变量.当我尝试print
变量的值时WordLetters
,它不会返回任何内容.当我尝试print
变量的长度时,它返回0
.
最初,我有一个NameError
在方面WordLetters
的变量,然后我外面定义的try:
功能,现在它没有返回值.可能是它try:
有自己的范围吗?如果是这样,我将如何将值附加到WordLetters
列表中?
RandomWord = random.choice(Words)
try:
WordLetters = [RandomWord[0], RandomWord[1], RandomWord[2], RandomWord[3], RandomWord[4], RandomWord[5], RandomWord[6], RandomWord[7], RandomWord[8], RandomWord[9]]
except(IndexError):
pass
print("Word: " + "".join(WordLetters))
print("The word is " + str(len(WordLetters)) + " letters long.")
Run Code Online (Sandbox Code Playgroud)