所以,我刚开始使用python,并且已经学会了如何修复一些问题,但我被这个问题卡住了,我搜索的东西对我没有帮助。
这是我的test.py文件:http://pastebin.com/TzASyCxm,在这里我使用mysql并将一些数据输出到液晶屏上。
现在,执行我的脚本中的代码会返回以下错误:
self.ip[host] = socket.gethostbyname(host)
TypeError: 'str' object does not support item assignment我试着在php中做一个简单的:
$data = array();
$test = 'level1';
$data[$test] = 'alex';发布于 2013-01-21 20:51:58
在PHP中,您需要用一个空数组array()初始化变量$data,以便为其建立索引并为其分配元素,与之类似,您需要为self.ip分配一个字典,以便随后对其进行索引和赋值。
您可以使用的方式因需求而异,但我们通常坚持两种格式中的一种
self.ip = dict()
self.ip = {}便笺
Python错误消息不言自明,您可以很容易地从中找出问题所在
TypeError: 'str' object does not support item assignment这意味着self.ip是一个string对象,而在Python中,String对象是不可变的,并且不能像C/C++那样被索引。因此,您可能在失败之前使用字符串初始化了此变量。
发布于 2013-01-21 20:48:53
正如错误所述,self.ip是一个字符串,您不能将其赋值给字符串中的元素。
假设您打算将其初始化为一个字典:self.ip = {}
https://stackoverflow.com/questions/14438899
复制相似问题