热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

Python条件与循环语句详解

本文详细介绍了Python中的条件语句和循环结构。主要内容包括:1.分支语句(if...elif...else);2.循环语句(for,while及嵌套循环);3.控制循环的语句(break,continue,else)。通过具体示例,帮助读者更好地理解和应用这些语句。

本文将深入探讨 Python 编程语言中的条件和循环语句,帮助读者理解并掌握其使用方法。

一、分支语句 (if...elif...else)

分支语句用于根据条件执行不同的代码块。常见的形式为 if...elif...else 语句。

示例:通过 ping 命令判断操作系统类型

import os
ip = input("请输入一个 IP 地址:")
res = os.popen(f"ping {ip}").read()
start = res.find("TTL")
if start != -1:
ttl = int(res[start + 4:start + res.find("\n", start)])
if 64 print(f"{ip} 是 Windows 系统")
elif ttl <= 64:
print(f"{ip} 是 Linux 系统")
else:
print(f"{ip} 的操作系统未知")
else:
print("ICMP 协议被防火墙拦截或目标不可达!")

二、循环语句 (for, while 和嵌套循环)

循环语句用于重复执行某段代码。Python 提供了 for 和 while 两种基本循环方式,以及嵌套循环。

示例 1:字幕滚动效果

import time
zimu = input("请输入一段话:")
i = 0
while True:
print(zimu[i:] + zimu[:i], end='', flush=True)
time.sleep(1)
print('\r', end='', flush=True)
i = (i + 1) % len(zimu)

示例 2:获取本机所有网卡及 IP 地址

import os
print("*" * 60)
inf = os.popen("ipconfig /all").read()
nics = inf.split("适配器")[1:]
print("%-40s%s" % ("网卡名称", "IP地址"))
for nic in nics:
lines = nic.split("\n")
name = lines[0].strip()[:-1]
ip_line = [line for line in lines if "IPv4" in line]
addr = ip_line[0].split(":")[1].strip().rstrip("(首选)") if ip_line else "网络未连接"
print("%-40s%s" % (name, addr))

三、控制循环语句 (break, continue, else)

控制循环语句可以改变循环的正常流程。break 用于立即退出循环,continue 用于跳过当前循环体中的剩余语句并继续下一次循环,else 在循环正常结束时执行。

示例 1:判断输入的分数是否需要补考

print("*" * 30)
for i in range(3):
score = float(input("请输入分数:"))
if score <60:
print("需要补考")
break
else:
print("全部通过")

示例 2:打印 0 到 20 之间的偶数

print("*" * 30)
for i in range(21):
if i % 2 != 0:
continue
print(i)

示例 3:验证 IP 地址合法性

print("-" * 30)
while True:
ip = input("请输入一个 IP 地址:")
parts = ip.split(".")
if len(parts) == 4 and all(part.isdigit() and 0 <= int(part) <= 255 for part in parts):
print(f"输入正确,你输入的 IP 是: {ip}")
break
else:
print("IP 输入错误,请重新输入")

推荐阅读
  • MapReduce原理是怎么剖析的
    这期内容当中小编将会给大家带来有关MapReduce原理是怎么剖析的,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。1 ... [详细]
  • 本文档汇总了Python编程的基础与高级面试题目,涵盖语言特性、数据结构、算法以及Web开发等多个方面,旨在帮助开发者全面掌握Python核心知识。 ... [详细]
  • 深入浅出TensorFlow数据读写机制
    本文详细介绍TensorFlow中的数据读写操作,包括TFRecord文件的创建与读取,以及数据集(dataset)的相关概念和使用方法。 ... [详细]
  • 第十一章 Python基本数据类型及内置方法
    一、概述数据类型是用来记录事物状态的,而事物的状态是不断变化的(如:一个人年龄的增长(操作int类型),单个人名的修改(操作str类型),学生列表中增加学生(操作list类型)等) ... [详细]
  • Python 工具推荐 | PyHubWeekly 第二十一期:提升命令行体验的五大工具
    本期 PyHubWeekly 为大家精选了 GitHub 上五个优秀的 Python 工具,涵盖金融数据可视化、终端美化、国际化支持、图像增强和远程 Shell 环境配置。欢迎关注并参与项目。 ... [详细]
  • 本文探讨了如何在Classic ASP中实现与PHP的hash_hmac('SHA256', $message, pack('H*', $secret))函数等效的哈希生成方法。通过分析不同实现方式及其产生的差异,提供了一种使用Microsoft .NET Framework的解决方案。 ... [详细]
  • 使用OpenCV和Python 4.2提升模糊图像清晰度
    本文介绍如何利用OpenCV库在Python中处理图像,特别是通过不同类型的滤波器来改善模糊图像的质量。我们将探讨均值、中值和自定义滤波器的应用,并展示代码示例。 ... [详细]
  • 优化Flask应用的并发处理:解决Mysql连接过多问题
    本文探讨了在Flask应用中通过优化后端架构来应对高并发请求,特别是针对Mysql 'too many connections' 错误的解决方案。我们将介绍如何利用Redis缓存、Gunicorn多进程和Celery异步任务队列来提升系统的性能和稳定性。 ... [详细]
  • 本文介绍了如何通过Java代码计算一个整数的位数,并展示了多个基础编程示例,包括求和、平均分计算、条件判断等。 ... [详细]
  • 本文详细介绍如何使用 Python 集成微信支付的三种主要方式:Native 支付、APP 支付和 JSAPI 支付。每种方式适用于不同的应用场景,如 PC 网站、移动端应用和公众号内支付等。 ... [详细]
  • 远程过程调用(RPC)是一种允许客户端通过网络请求服务器执行特定功能的技术。它简化了分布式系统的交互,使开发者可以像调用本地函数一样调用远程服务,并获得返回结果。本文将深入探讨RPC的工作原理、发展历程及其在现代技术中的应用。 ... [详细]
  • 当unique验证运到图片上传时
    2019独角兽企业重金招聘Python工程师标准model:public$imageFile;publicfunctionrules(){return[[[na ... [详细]
  • 深入解析Hadoop的核心组件与工作原理
    本文详细介绍了Hadoop的三大核心组件:分布式文件系统HDFS、资源管理器YARN和分布式计算框架MapReduce。通过分析这些组件的工作机制,帮助读者更好地理解Hadoop的架构及其在大数据处理中的应用。 ... [详细]
  • 本文探讨了Hive作业中Map任务数量的确定方式,主要涉及HiveInputFormat和CombineHiveInputFormat两种InputFormat的分片计算逻辑。通过调整相关参数,可以有效控制Map任务的数量,进而优化Hive作业的性能。 ... [详细]
  • 一个登陆界面
    预览截图html部分123456789101112用户登入1314邮箱名称邮箱为空15密码密码为空16登 ... [详细]
author-avatar
張小媫_602
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有