python“NoneType”对象没有属性“encode”

2024-06-17 11:46:19 发布

您现在位置:Python中文网/ 问答频道 /正文

我写了一个很小的Python片段,它可以抓取一个feed并打印出来。当我运行代码时,feed中的某些内容会触发错误消息,您在这里看到的是我的问题。以下是错误时的完整控制台输出:

> Traceback (most recent call last):  
> File "/home/vijay/ffour/ffour5.py",
> line 20, in <module>
>     myfeed()   File "/home/vijay/ffour/ffour5.py", line
> 15, in myfeed
>     sys.stdout.write(entry["title"]).encode('utf-8')
> AttributeError: 'NoneType' object has
> no attribute 'encode'

Tags: 代码inpy消息内容homefeed错误
2条回答

让我们尝试清除异常消息中的一些混乱。

函数调用

sys.stdout.write(entry["title"])

不返回。“.encode('utf-8')”是对上述函数返回的内容的encode函数的调用。

问题是没有一个没有encode函数(或encode属性),因此您会得到一个属性错误,该错误会命名您试图获取的属性的类型和您试图获取的属性。

> sys.stdout.write(entry["title"]).encode('utf-8')

这就是罪魁祸首。你可能是说:

sys.stdout.write(entry["title"].encode('utf-8'))

(注意最后一个右括号的位置。)

相关问题 更多 >