开始使用python问题

时间:2013-01-21 12:43:34

标签: php python debugging variable-assignment

所以,我刚开始使用python,并且已经学会了如何修复一些问题,但是我对这个问题感到困惑,而且我搜索的内容对我没有帮助。

这是我的test.py文件:http://pastebin.com/TzASyCxm我使用mysql并将一些数据输出到LCD屏幕。

现在,在我的脚本中执行代码会返回以下错误:

self.ip[host] = socket.gethostbyname(host)
TypeError: 'str' object does not support item assignment

我想在php中做一个简单的事情:

$data = array();
$test = 'level1';
$data[$test] = 'alex';

2 个答案:

答案 0 :(得分:1)

如错误所述,self.ip是一个字符串,您无法分配给字符串中的元素。

据推测,您打算将其初始化为字典:self.ip = {}

答案 1 :(得分:1)

在PHP中,您需要使用空数组$data初始化变量array(),以便以类似的方式为其索引和分配元素,您需要将字典分配给self.ip随后索引并分配值。

您可以采取的方式因要求而异,但我们通常会坚持使用两种格式之一

self.ip = dict()
self.ip = {}

注意

Python错误消息是不言自明的,您可以轻松地从中识别问题

TypeError: 'str' object does not support item assignment

这意味着self.ip是一个字符串对象,而在Python中,字符串对象是不可变的,不能像C / C ++那样被索引。很可能,你可能在失败之前用字符串初始化了这个变量。