【问题标题】:Getting started with python issuespython问题入门
【发布时间】:2013-01-21 12:43:34
【问题描述】:

所以,我刚开始使用 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';

【问题讨论】:

    标签: php python debugging variable-assignment


    【解决方案1】:

    和PHP一样,你需要用一个空数组array()来初始化变量$data,以便对其进行索引和分配元素,类似的,你需要为self.ip分配一个字典来随后索引和赋值。

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

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

    注意

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

    TypeError: 'str' object does not support item assignment
    

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

    【讨论】:

    • 是的...愚蠢的我,信息很明显。谢谢
    • @w0rldart:如果这个或其他答案有帮助,请考虑接受它
    【解决方案2】:

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

    大概您打算将其初始化为字典:self.ip = {}

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2020-06-08
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多