python - 为什么我的代码打印 'None' ?

标签 python class python-2.7 printing nonetype

我的代码可以在这里找到:https://github.com/thekarangoel/HackerNewsAPI/blob/master/hn.py

测试用例是这样的:

from hn import HN

hn = HN()

for story in hn.get_top_stories()[:10]:
    print story.print_story()
    print '*' * 50
    print ''

这会打印我的输出,如下所示:

.....
.....
.....
**************************************************

Rank: 3
Story ID: 6231993
Title: Pipe Dream? 3D-Printed Model of Hyperloop Created
Link: http://news.yahoo.com/pipe-dream-3d-printed-model-hyperloop-created-192033757.html
Domain: yahoo.com
Points: 1
Submitted by: evo_9
Number of comments: 0
Link to comments: http://news.ycombinator.com/item?id=6231993
None
**************************************************

Rank: 4
Story ID: 6231992
Title: What colour are your bits?
Link: http://ansuz.sooke.bc.ca/entry/23
Domain: bc.ca
Points: 1
Submitted by: grey-area
Number of comments: 0
Link to comments: http://news.ycombinator.com/item?id=6231992
None
.....
.....

注意到每次打印末尾的None了吗?为什么它在那里?代码有什么问题?

最佳答案

似乎 story.print_story() 不会返回任何内容。

如果函数不返回,则返回 None

>>> def a():
...     print 1
...
>>> print a()
1
None

printstory.print_story() 中删除 print

关于python - 为什么我的代码打印 'None' ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18296830/

相关文章:

python - Python 中的 XML <arg> 值替换

php 调用父函数使父函数无法加载自己的变量

c++ - 在一个类上重载 ostream << 并输出另一个类的数据

python - 在 python 中使用字符串时出错

python - 为什么函数调用完成后变量仍然存在-python

jquery - django-autocomplete-light 默认加载以前保存的值?

python - 使用 Marshmallow 的嵌套模式自动字典键解析

c++ - 指向类方法的指针

csv - 使用Python的csv.dictreader搜索特定键然后打印其值

python - 理解 Python 中的属性