print()和input()是Python基础I/O函数,需掌握换行控制、格式化、类型转换及异常处理;input()恒返字符串,须手动转类型并捕获ValueError与EOFError;组合使用时应提示清晰、校验充分、输出美观。

Python 的 print() 和 input() 是最基础、最常用的输入输出函数,掌握它们是写好交互式程序的第一步。它们看似简单,但细节决定体验——比如换行控制、格式美化、类型转换和异常处理,稍不注意就容易出错。
print():不只是“打印一行字”
print() 默认在输出末尾加换行,并用空格分隔多个参数。你可以通过参数精细控制输出效果:
- sep:修改参数间的分隔符,例如 print("a", "b", "c", sep="-") 输出 a-b-c
- end:替换默认的换行符,例如 print("Hello", end="") 后接 print("World") 会输出 HelloWorld(无换行)
- 支持 f-string 和 .format() 实现动态格式化,如 print(f"温度:{25.6:.1f}°C") 输出 温度:25.6°C
- 可指定输出目标,如写入文件:print("log", file=open("out.txt", "a"))
input():用户输入永远是字符串
input() 总是返回字符串类型,哪怕用户只敲了数字。直接用于计算会报错,必须手动转换:
- 读取整数:age = int(input("请输入年龄:")),但若用户输字母会触发 ValueError
- 安全做法是加异常处理:try: x = float(input("输入小数:")) except ValueError: print("请输入有效数字")
- input() 参数是提示信息,不换行;提示后光标自动停在同行右侧,适合简洁交互
- 想读多行输入?可用循环或 sys.stdin.read(),input() 本身只读单行
组合使用:构建简单交互程序
把 print() 和 input() 搭配起来,就能做出带引导的命令行工具。关键点是逻辑清晰、提示明确、容错合理:
动态WEB网站中的PHP和MySQL详细反映实际程序的需求,仔细地探讨外部数据的验证(例如信用卡卡号的格式)、用户登录以及如何使用模板建立网页的标准外观。动态WEB网站中的PHP和MySQL的内容不仅仅是这些。书中还提到如何串联JavaScript与PHP让用户操作时更快、更方便。还有正确处理用户输入错误的方法,让网站看起来更专业。另外还引入大量来自PEAR外挂函数库的强大功能,对常用的、强大的包
立即学习“Python免费学习笔记(深入)”;
- 先用 print() 清晰说明要做什么,再用 input() 获取数据
- 对 input() 结果做必要校验:非空、范围、类型,避免后续崩溃
- 输出结果时用 print() 格式化,提升可读性,例如对齐、单位、颜色(配合 ANSI 转义码)
- 示例:简易计算器开头可写 print("=== 计算器 ==="); a = float(input("第一个数:")); op = input("运算符(+ - * /):")
常见误区与建议
新手常踩的坑,往往不是不会写,而是忽略边界情况:
- input() 遇到 EOF(如 Ctrl+D 或 Ctrl+Z)会抛出 EOFError,脚本批量运行时需捕获
- print() 多线程下可能乱序,高并发场景建议加锁或用 logging 替代
- 别用 input() 做密码输入——明文可见;应改用 getpass.getpass()
- 调试时 print() 很方便,但上线前建议统一替换为 logging,便于开关和分级









