电话
400 9058 355
本文讲解python中变量赋值与print函数的常见误区,重点说明为何a = print(...)会导致变量存储为none,并提供三种正确实现“根据输入条件打印预设内容”的方法。
在Python中,print() 是一个函数,它的作用是将内容输出到控制台,并返回 None(Python中所有无显式返回值的函数默认返回 None)。因此,当写下:
A = print('Hello world')这段代码会立即执行打印操作(屏幕上显示 Hello world),然后把 print() 的返回值 None 赋给变量 A。后续执行 print(A) 实际上输出的是 None,而非 'Hello world'——这显然不是我们想要的效果。
✅ 正确做法是:先将字符串内容赋值给变量,再按需调用 print():
A = "Hello world" # 存储字符串,不触发打印
test = input("What do you want to do? ") # 建议添加提示文本,提升用户体验
if test == 'print Hello':
print(A) # 此时才真正打印变量内容⚠️ 注意事项:
? 进阶技巧:若希望“变量”本身具备可执行打印行为(即变量代表一个动作),可使用函数对象(如 lambda 或普通函数):
A = lambda: print("Hello world") # A 现在是一个可调用的函数
test = input("What do you want to do? ")
if te
st == 'print Hello':
A() # 调用函数,真正执行打印这种方式实现了“延迟执行”,赋值时不打印,调用时才打印,适用于需要封装行为的场景。
? 总结:
始终牢记:赋值操作存储的是表达式的求值结果,而非表达式本身。理解这一点,就能避开大量初学者陷阱。
邮箱:8955556@qq.com
Q Q:8955556
本文详解如何将Go官方present工具(用于生成HTML5...
PySNMP在不同版本中对SNMP错误状态(errorSta...
time.Sleep仅阻塞当前goroutine,其他gor...
PHPfopen()创建含特殊符号的文件名失败主因是操作系统...
WooCommerce中通过代码为分组产品动态聚合子商品的属...
io.ReadFull返回io.ErrUnexpectedE...
本文详解Yii2中控制器向视图传递ActiveRecord数...
本文详解为何通过wp_set_object_terms()为...
Pytest中使用@mock.patch类装饰器会导致补丁泄...
带缓冲的channel是并发安全的FIFO队列;make(c...