这是我学习python的第一天.所以这对你们许多人来说都是一个noob问题.请参阅以下代码:
#!/usr/bin/env python
import sys
def hello(name):
name = name + '!!!!'
print 'hello', name
def main():
print hello(sys.argv[1])
if __name__ == '__main__':
main()
Run Code Online (Sandbox Code Playgroud)
当我运行它
$ ./Python-1.py alice
hello alice!!!!
None
Run Code Online (Sandbox Code Playgroud)
现在,我无法理解它的"None"来源?
Tho*_*ers 24
计算print代码中的语句数.你会看到,你打印"hello alice!!!"的hello功能,并打印结果hello功能.因为该hello函数不返回一个值(您对该return语句执行的操作),它最终会返回该对象None.你的print内部main功能最终打印None.
改变你的
def main():
print hello(sys.argv[1])
Run Code Online (Sandbox Code Playgroud)
至
def main():
hello(sys.argv[1])
Run Code Online (Sandbox Code Playgroud)
您是从hello方法显式打印返回值.由于您没有指定返回值,因此返回None您在输出中看到的值.
| 归档时间: |
|
| 查看次数: |
27776 次 |
| 最近记录: |