嗨,
下面的代码可以工作:
- newList = ['aa', 'bb', 'cc', 'dd']
- newList[2] = 'zz'
- print newList
- ['aa', 'bb', 'zz', 'dd']
-
但以下代码显示错误-
- myDBRow = [''] * len(columnList)
- myDBRow[DB.RegionCode] = 'ABC'
- TypeError: 'str' object does not support item assignment
-
你能在这里推荐一些东西吗?
谢谢。
# 回答1
该错误指示myDBRow是一个字符串。您的代码看起来是正确的,如下例所示:
- >>> myDBRow = [''] * 6
- >>> myDBRow
- ['', '', '', '', '', '']
- >>> myDBRow[3]="ABC"
- >>> myDBRow
- ['', '', '', 'ABC', '', '']
您的错误可以通过以下示例重现:
- >>> myDBRow = "*" * 6
- >>> myDBRow[3]="ABC"
- Traceback (most recent call last):
- File "<interactive input>", line 1, in <module>
- TypeError: 'str' object does not support item assignment
- >>>
发生了一些在您的代码中不明显的事情。
# 回答2
首先要检查的是,"myDBRow"在其他地方用作单独的变量名。搜索一下这个名字,看看它是否在其他地方使用。
# 回答3
嗨,
是的,你是对的。
我的错误,我不小心在某个地方把它变成了字符串,这就是这个错误的原因。
很抱歉给您添麻烦了。
感谢您的回复。
谢谢。