Python程序控制语句用法实例分析

闻溪
闻溪
发布时间:2026-10-13| 4人浏览过
原创

本文详细解析Python程序控制语句的用法,涵盖换行规则、条件判断、循环结构及列表推导式。深入讲解函数定义、参数传递、全局变量管理及类与对象的创建,并介绍文件操作、异常处理及外部库调用方法,帮助开发者掌握Python核心语法。

本文通过具体实例解析Python程序控制语句的使用方式,旨在为读者提供实用的参考指南。

1、换行

Python默认以换行符作为语句结束标志,无需使用分号。若单条语句过长需跨行书写,应在行尾添加反斜杠(\)表示续行。需要注意的是,在圆括号()、方括号[]或大括号{}内部进行换行时,无需使用续行符。


str='Hello'+\
  ' World'
print(str)    #不会报错,输出:Hello World
list1=[1,2,
   3,4]
print(list1)   #输出:[1, 2, 3, 4]

2、条件语句

Python通过缩进量来界定代码块。if条件判断语句以冒号:结尾,随后的代码块需保持统一的缩进格式,否则将引发语法错误。其标准格式如下:


print("请输入你的成绩")
score=int(input())
if score>=90:
  print("优秀!")
elif score<60:
  print("不及格!")
else:
  print("良好")

3、循环语句

while:


i=0
count=0
while i<100:
  if i%3==0:
    count+=1
  i+=1
print("100以内3的倍数有%d个"%count)

for循环用于遍历集合中的每个元素,示例如下:


count=0
list1=[5,12,6,17,8,9,20]
for i in list1:
  if i>10:
    count+=1
print("list1中大于10的数有%d个"%count)

利用enumerate函数可以获取集合元素的索引,例如:


L = ['Adam', 'Lisa', 'Bart']
for index, name in enumerate(L):
  print (index+1, '-', name,end=' ')
#输出:1 - Adam 2 - Lisa 3 - Bart
d = { 'Adam': 95, 'Lisa': 85, 'Bart': 59, 'Paul': 74 }
sum = 0.0
for k, v in d.items():          #通过items()访问键值
  sum = sum + v
  print k,':',v
print 'average', ':', sum/4
#输出:Lisa : 85 Paul : 74 Adam : 95 Bart : 59 average : 78.25

输出结果:1 - Adam 2 - Lisa 3 - Bart

列表推导式结合for循环可直接生成新列表,示例如下:


list1=[1,2,3]
list2=[2,3,4]
print([x*y for x in list1 for y in list2])
#输出:[2, 3, 4, 4, 6, 8, 6, 9, 12]
print([x for x in list1 if x>1])
#输出:[2, 3]

循环嵌套结构示例:


for i in range(1,10):    #range表示从1到9的数
  for j in range(1,i+1):
    print("%d × %d = %-5d"%(i,j,i*j),end=' ')
  print()

在循环中,break用于跳出当前层循环,continue用于跳过本次迭代进入下一次循环,pass语句则作为占位符,不执行任何操作。

例如,以下代码用于输出100以内的素数:


i=2
while i<100:
  flag=True
  j=2
  while j<i:
    if i%j==0:
      flag=False
      break      #当可以整除时,此时i不是素数,则不必继续往下判断,跳出本层循环
    j+=1
  if flag:
    print(i,end=' ')
  i+=1

4、函数

使用def关键字声明函数,后接函数名及圆括号()。

所有传入参数和自变量必须置于圆括号内,括号间可用于定义参数。可选参数置于必选参数之后,并可指定默认值。命名参数必须赋值。

函数首行可选地包含文档字符串(docstring),用于描述函数功能,可通过函数名.__doc__属性查看。

return [表达式]用于结束函数并将值返回给调用者。若无表达式,return等效于返回None。也可返回元组,利用元组拆包可便捷地返回多个值。


def myFunction(list1,int1=0,str1="default"):  #函数定义,其中int1,str1为可选参数
  "这是函数文档说明"
  list1.append("add")
  int1+=1;
  return list1,int1,str1      #返回元组
print(myFunction.__doc__)      #输出函数文档:这是函数文档说明
list1=[1,2,3]
print(myFunction(list1))       #打印返回的元组:([1, 2, 3, 'add'], 1, 'default')
v1,v2,v3=myFunction(list1)      #对返回结果进行拆包,并分别传给三个变量
print(v1,v2,v3)           #分拆结果输出:[1, 2, 3, 'add', 'add'] 1 default

此外,可传入可变数量参数*args,其本质为元组tuple,通过遍历即可获取所有可变参数。


def average(*args):
  if len(args)==0:        #若没有参数传入
    return 0.0
  else:
    sum=0.0
    for i in args:       #遍历参数元组内容
      sum+=i
    return sum/len(args)
print(average())          #输出:0.0
print(average(1, 2, 2, 3, 4) )   #输出:2.4

5、全局变量

全局变量在函数外部进行声明。

局部变量在函数内部声明或作为函数参数存在。

若需在函数内部修改全局变量的值,必须使用global关键字显式声明,否则Python会将其视为函数内的新局部变量。


var=5
def fun():
  global var    #函数内部声明使用全局变量var并对其进行修改
  var=3
fun()
print(var)      #输出:3,而不是5

6、类的定义与使用

类定义的第一行可选字符串作为类的帮助信息。

类属性既可通过实例访问,也可通过类名直接访问。

__init__()是类的构造函数,在创建实例时自动调用,用于初始化实例属性。类方法的第一个参数默认为self,代表实例本身,通过它可访问实例属性,调用时无需显式传递该参数。


class Student(object):
  "这是一个学生类"                    #类帮助信息
  studentCount=0                     #类属性
  def __init__(self,name,age):              #类构造函数
    self.name=name                   #初始化属性
    self.age=age
    Student.studentCount+=1
  def showCount(self):
    print("现在学生人数为:%d"%Student.studentCount)   #访问类属性
  def showStudent(self):                 #定义类方法
    print("姓名:%s,年龄:%d"%(self.name,self.age))
print(Student.__doc__)                    #输出类帮助信息
s1=Student('小明',15)                     #类实例化
s2=Student('小李',23)
s1.showCount()                        #调用类的函数
s2.showStudent()

7、文件操作

利用Python内置函数库可便捷完成文件读写。open()函数的第一个参数指定文件路径,第二个参数指定打开模式。


with open("test.txt",'wt') as w_file:
  w_file.write("文件写入测试!")
with open("test.txt",'rt') as r_file:
  str=r_file.read()
print(str)

8、异常处理

在try块中放置可能引发异常的代码,通过except捕获异常并执行相应处理逻辑。若未发生异常,则执行else块中的语句。无论是否发生异常,finally块中的代码始终执行。


def except_fun():
  try:
    10/0
  except:
    print("发生异常")
  else:
    print("正常执行")
  finally:
    print("程序结束")
except_fun()
#输出:
#发生异常
#程序结束

9、调用外部函数库

借助Python丰富的外部资源库,可高效完成各类复杂操作。


import random              #导入外部库
from time import time          #from 外部库 import 某个函数
import numpy as np            #导入库并重命名
import matplotlib.pyplot as plt
rdm=random.randint(1,100)        #在1到100之间产生随机数
print(rdm)
start=time()               #产生当前的时间函数
print(start)
x=np.linspace(1,10,100)         #在1到10之间产生100个等差数并返回列表x
y=2*x+1
plt.figure()               #绘制图片
plt.scatter(x,y)             #将列表数据x、y绘制到图片,结果为一条直线
print("程序运行时间:%f"%(time()-start))  #通过time函数计算程序的运行时间

10、获取帮助

dir()函数用于打印某类型的所有方法,help()函数用于显示某类的帮助文档。


dir(int)
help(list)

更多关于Python相关内容感兴趣的读者可查看本站专题:《Python入门与进阶经典教程》、《Python数据结构与算法教程》、《Python函数使用技巧总结》、《Python字符串操作技巧汇总》及《Python文件与目录操作技巧汇总》

希望本文所述对大家Python程序设计有所帮助。

免责声明:本文内容仅供参考,不代表本站观点。转载或引用请注明出处。

Python 相关产品和应用

全部下载
Selenium

Selenium

4.51.0 · Windows

用于浏览器自动化和 Web 测试的 Python 工具。

scikit-learn

scikit-learn

1.9.1 · Windows

常用 Python 机器学习算法与模型评估工具库。

Black

Black

26.10.1 · Windows

强调一致性的 Python 自动代码格式化工具。

Ruff

Ruff

0.17.1 · macOS

由 Rust 编写的高速 Python 代码检查和格式化工具。

pytest

pytest

9.1.1 · Windows

简洁而强大的 Python 自动化测试框架。

FastAPI

FastAPI

0.146.0 · Windows

高性能 Python API 框架,支持类型提示和自动接口文档。

Flask

Flask

3.1.3 · Windows

轻量灵活的 Python Web 应用框架。

Django

Django

6.1.2 · Windows

成熟的 Python Web 框架,适合构建内容站点和业务系统。

Spyder

Spyder

6.1.7 · Windows

面向科学计算与数据分析的 Python 集成开发环境。

SciPy

SciPy

1.18.1 · Windows

面向科学、工程和技术计算的 Python 算法库。