Python编程基础:输入输出与流程控制实战
1. Python基础入门从输入输出到流程控制刚接触Python时掌握基本的输入输出和流程控制是打开编程大门的第一把钥匙。这些看似简单的概念却是构建复杂程序的基石。作为一门解释型语言Python的语法设计非常人性化特别适合编程新手快速上手。我刚开始学习Python时最让我惊喜的就是它简洁的语法结构。相比其他语言Python用更少的代码就能实现相同的功能这让初学者能更快看到成果保持学习动力。比如打印Hello World只需要一行print(Hello World)而在其他语言中可能需要更多样板代码。2. 基础输入输出操作2.1 输出print()函数详解print()是Python中最基础也最常用的输出函数。它的基本用法很简单print(Hello, Python!) # 输出字符串 print(2023) # 输出数字 print(3.14) # 输出浮点数但print()的功能远不止于此它有一些非常实用的特性多参数输出可以同时输出多个值默认用空格分隔name Alice age 25 print(Name:, name, Age:, age) # 输出Name: Alice Age: 25分隔符控制通过sep参数自定义分隔符print(2023, 08, 15, sep-) # 输出2023-08-15结束符控制默认换行可通过end参数修改print(Loading, end...) print(Done!) # 输出Loading...Done!提示在Python 3中print是一个函数必须加括号。这与Python 2不同Python 2中print是一个语句。2.2 输入input()函数实战获取用户输入使用input()函数它会暂停程序执行等待用户输入name input(请输入你的名字) print(你好, name)关于input()有几个重要知识点返回值类型input()总是返回字符串类型即使输入的是数字age input(请输入你的年龄) print(type(age)) # 输出class str类型转换需要将输入转换为其他类型时使用类型转换函数age int(input(请输入你的年龄)) height float(input(请输入你的身高(米)))输入安全在实际应用中应该对用户输入进行验证while True: try: age int(input(请输入年龄(0-120))) if 0 age 120: break else: print(请输入有效的年龄范围) except ValueError: print(请输入数字)3. 条件判断if-elif-else结构3.1 基础if语句条件判断是编程中的决策机制Python使用if、elif和else关键字实现score 85 if score 90: print(优秀) elif score 80: print(良好) elif score 60: print(及格) else: print(不及格)3.2 条件表达式详解Python中的条件表达式非常灵活比较运算符,!,,,,逻辑运算符and,or,not成员运算符in,not in身份运算符is,is not# 复杂条件判断示例 age 25 has_license True if 18 age 70 and has_license: print(可以驾驶) else: print(不符合驾驶条件)3.3 条件判断的常见陷阱在实际编码中条件判断有几个容易出错的地方浮点数比较由于浮点数精度问题避免直接用比较# 不推荐 if 0.1 0.2 0.3: # 结果为False print(相等) # 推荐方式 if abs((0.1 0.2) - 0.3) 1e-9: print(相等)None比较应该使用is而不是value None if value is None: # 正确方式 print(值为空)布尔值判断直接使用值本身不要与True/False比较flag True # 不推荐 if flag True: print(标记为真) # 推荐 if flag: print(标记为真)4. 循环结构while和for4.1 while循环基础while循环在条件为真时重复执行代码块count 0 while count 5: print(f当前计数{count}) count 1while循环特别适合处理不确定次数的循环比如用户输入验证while True: user_input input(请输入quit退出) if user_input.lower() quit: break print(f你输入了{user_input})4.2 for循环遍历for循环通常用于遍历序列如列表、字符串等# 遍历字符串 for char in Python: print(char) # 遍历列表 fruits [苹果, 香蕉, 橙子] for fruit in fruits: print(f我喜欢吃{fruit})4.3 range()函数详解range()常与for循环配合使用生成数字序列# 基本用法 for i in range(5): # 0到4 print(i) # 指定起始和结束 for i in range(2, 6): # 2到5 print(i) # 指定步长 for i in range(0, 10, 2): # 0,2,4,6,8 print(i)4.4 循环控制语句Python提供了几个控制循环执行的关键字break完全终止循环continue跳过当前迭代进入下一次循环else循环正常结束时执行非break退出# 查找质数示例 for n in range(2, 10): for x in range(2, n): if n % x 0: print(f{n} {x} * {n//x}) break else: print(f{n}是质数)5. 实战应用与常见问题5.1 综合示例简易计算器结合输入输出和流程控制我们可以实现一个简易计算器while True: print(\n简易计算器) print(1. 加法) print(2. 减法) print(3. 退出) choice input(请选择操作(1/2/3): ) if choice 3: print(感谢使用再见) break if choice in (1, 2): try: num1 float(input(输入第一个数字: )) num2 float(input(输入第二个数字: )) if choice 1: print(f结果: {num1} {num2} {num1 num2}) else: print(f结果: {num1} - {num2} {num1 - num2}) except ValueError: print(错误请输入有效数字) else: print(无效选择请重新输入)5.2 常见错误与调试技巧初学者在使用流程控制时容易遇到的一些问题缩进错误Python对缩进非常严格必须保持一致# 错误示例 if True: print(缩进错误) # 会报IndentationError # 正确示例 if True: print(正确缩进)无限循环while循环条件永远为真导致无法退出# 危险无限循环 count 10 while count 0: print(count) # 忘记写 count - 1变量作用域循环中创建的变量在循环外也可访问for i in range(3): message f迭代{i} print(message) # 输出迭代25.3 性能优化建议即使是简单的循环也有优化空间减少循环内计算将不变的计算移到循环外# 不推荐 for i in range(10000): result math.sqrt(x) * i # 每次循环都计算sqrt(x) # 推荐 sqrt_x math.sqrt(x) for i in range(10000): result sqrt_x * i使用列表推导式替代简单循环# 传统方式 squares [] for x in range(10): squares.append(x**2) # 列表推导式 squares [x**2 for x in range(10)]尽早终止循环满足条件后立即退出循环# 查找第一个满足条件的元素 numbers [3, 7, 2, 9, 5] found None for num in numbers: if num % 2 0: found num break掌握这些Python基础后你已经可以编写许多实用的小程序了。在实际编码中建议多动手实践从简单项目开始逐步增加复杂度。记住编程是一项实践技能看得懂和写得出来是完全不同的体验。

相关新闻

四足机器人在化工防爆场景的工程化应用实践

四足机器人在化工防爆场景的工程化应用实践

化工行业的生产装置区往往涉及易燃易爆介质、有毒有害气体、高温高压环境,且设施布局呈现典型的多楼层立体结构。传统的巡检方式依赖人工手持仪器逐层逐点检查,不仅劳动强度大、巡检效率低,更存在严重的安全隐患。据应急管理部统计数据,2023年全国化工行业发生较大及以上事…

2026/10/26 16:56:59 阅读更多 →
ABP框架多语言配置:从XML迁移到JSON的实践指南

ABP框架多语言配置:从XML迁移到JSON的实践指南

1. ABP框架多语言配置基础ABP框架的多语言系统是其核心功能之一,它允许开发者轻松实现应用程序的国际化支持。框架默认提供了XML和JSON两种格式的语言资源文件支持,这为不同开发习惯的团队提供了灵活性选择。1.1 XML语言配置的典型结构ABP框架默认使用XM…

2026/10/25 19:45:22 阅读更多 →
【共创季稿事节】HarmonyOS 6.1 升级后性能回退排查与修复实录

【共创季稿事节】HarmonyOS 6.1 升级后性能回退排查与修复实录

文章目录每日一句正能量摘要一、问题现象与背景1.1 升级后观察到的异常1.2 性能基线对比二、冷启动变慢排查2.1 抓取启动 Systrace2.2 Systrace 分析发现2.3 根因定位2.4 修复方案2.5 修复后效果三、内存泄漏排查3.1 内存快照对比3.2 根因定位3.3 修复方案3.4 修复后效果四、UI…

2026/10/25 8:04:31 阅读更多 →

最新新闻

Electron桌面应用开发实战:从环境搭建到打包发布全流程

Electron桌面应用开发实战:从环境搭建到打包发布全流程

做前端这些年,我大部分时间都在跟浏览器标签页打交道,直到第一次把桌面应用跑起来,才发现原来自己一直被限制在地址栏和刷新按钮围起来的框框里。Electron这个词,最开始是在某段时间频繁出现在同事的讨论里,一个用HTML…

2026/10/26 12:00:21 阅读更多 →
滑盖智能锁T109深度解析:结构原理、安装调试与故障排查

滑盖智能锁T109深度解析:结构原理、安装调试与故障排查

简介:亚太天能T109滑盖智能锁产品说明书是一份PDF格式的官方技术文档,主要面向智能锁安装人员、终端用户及售后维护者,帮助快速掌握产品安装、配置与常见故障处理。全包仅1个PDF文件,大小4.37MB,内容结构清晰&#xff…

2026/10/25 22:36:10 阅读更多 →
PMSM弱磁控制原理与Simulink建模:高速AGV驱动系统设计指南

PMSM弱磁控制原理与Simulink建模:高速AGV驱动系统设计指南

上个月我在调试一台高速AGV的驱动系统,整车要求空载跑到8m/s,电机转速已经拉到额定点,驱动器的输出电压也顶到了母线电压极限附近。再往上踩速度指令,转速纹丝不动,三相电流反而开始震荡。那会儿我的第一反应就是&…

2026/10/26 4:52:12 阅读更多 →
C++核心知识点:从内存管理到STL的实战指南

C++核心知识点:从内存管理到STL的实战指南

C 这门语言我前前后后折腾了十几年,用它写过嵌入式驱动、做过游戏服务端,也搭过基础组件库。每次看到新人一头扎进"C 核心知识点"这个搜索词,我其实挺感慨的——这门语言的难点从来不是语法多,而是知识点之间的耦合太深…

2026/10/26 12:00:21 阅读更多 →
T109滑盖智能锁怎么装?安装调试与故障排查全攻略

T109滑盖智能锁怎么装?安装调试与故障排查全攻略

简介:亚太天能T109滑盖智能锁产品说明书以PDF格式发布,适合智能锁用户、安装人员与售后维修人员阅读。内容围绕T109系列指纹密码刷卡锁展开,先介绍前面板、后面板、锁体、机械钥匙、电池盒盖等部件名称与功能,再给出完整安装步骤&…

2026/10/26 5:00:37 阅读更多 →
LLM知识降熵:从信息垄断到理解权下放

LLM知识降熵:从信息垄断到理解权下放

你有没有过这种经历:翻开源码注释、论文摘要或者一份专业报告,每个字都认识,连在一起却像天书。想找人聊聊,身边要么没人懂,要么懂的懒得跟你解释。后来我试着把同一段内容丢给一个大语言模型,几秒钟之后&a…

2026/10/26 3:16:46 阅读更多 →

日新闻

周新闻

月新闻

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/26 12:00:19 阅读更多 →
Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/25 13:21:54 阅读更多 →
黑夜航拍船只数据集训练YOLOV5模型全流程解析

黑夜航拍船只数据集训练YOLOV5模型全流程解析

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/26 8:34:37 阅读更多 →