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


Posted in Python onJanuary 14, 2020

本文实例讲述了Python程序控制语句用法。分享给大家供大家参考,具体如下:

1、换行

在Python中默认换行结束一个语句而不是使用分号,而如果我们的语句无法在一行放下需要换行时,就需要在行尾使用\表示这一行没有结束。而在()、[]、{}内的逗号换行则不需要。

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

2、条件语句

python的代码块通过缩进来指示,if条件判断以:结束,并在下一行通过缩进表示一个代码块的开始,如果不遵守缩进格式则会报错。其格式如下:

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

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”关键字进行声明,后接函数标识符名称和圆括号()

任何传入参数和自变量必须放在圆括号中间,圆括号之间可以用于定义参数。可选参数以集合的方式放在必选参数之后,可以赋予默认值。已命名的参数需要赋值。

函数的第一行语句可以选择性地使用文档字符串,用于存放函数说明,通过函数名.__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关键字进行声明,否则会被认为是函数内新的局部变量

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开发实例分享bt种子爬虫程序和种子解析
May 21 Python
Python中的对象,方法,类,实例,函数用法分析
Jan 15 Python
举例详解Python中的split()函数的使用方法
Apr 07 Python
Python多线程爬虫简单示例
Mar 04 Python
Pycharm学习教程(3) 代码运行调试
May 03 Python
python编程线性回归代码示例
Dec 07 Python
Pyqt实现无边框窗口拖动以及窗口大小改变
Apr 19 Python
实践Vim配置python开发环境
Jul 02 Python
Python编程在flask中模拟进行Restful的CRUD操作
Dec 28 Python
python调用虹软2.0第三版的具体使用
Feb 22 Python
pandas数据处理之绘图的实现
Jun 15 Python
Python万能模板案例之matplotlib绘制甘特图
Apr 13 Python
dpn网络的pytorch实现方式
Jan 14 #Python
Django之form组件自动校验数据实现
Jan 14 #Python
简单了解python filter、map、reduce的区别
Jan 14 #Python
Python vtk读取并显示dicom文件示例
Jan 13 #Python
Python解析多帧dicom数据详解
Jan 13 #Python
python 将dicom图片转换成jpg图片的实例
Jan 13 #Python
基于Python和PyYAML读取yaml配置文件数据
Jan 13 #Python
You might like
php实现利用phpexcel导出数据
2013/08/24 PHP
PHP使用pcntl_fork实现多进程下载图片的方法
2014/12/16 PHP
php中关于socket的系列函数总结
2015/05/18 PHP
PHP中的事务使用实例
2015/05/26 PHP
js滚动条多种样式,推荐
2007/02/05 Javascript
javascript eval和JSON之间的联系
2009/12/31 Javascript
JavaScript用JQuery呼叫Server端方法示例代码
2014/09/03 Javascript
jQuery使用toggleClass方法动态添加删除Class样式的方法
2015/03/26 Javascript
javascript表格隔行变色加鼠标移入移出及点击效果的方法
2015/04/10 Javascript
基于JS实现翻书效果的页面切换样式
2017/02/16 Javascript
AngularJS自定义指令之复制指令实现方法
2017/05/18 Javascript
AngularJS基于MVC的复杂操作实例讲解
2017/12/31 Javascript
Vue 换肤的示例实践
2018/01/23 Javascript
手写简单的jQuery雪花飘落效果实例
2018/04/22 jQuery
jQuery实现获取及设置CSS样式操作详解
2018/09/05 jQuery
ElementUI多个子组件表单的校验管理实现
2019/11/07 Javascript
小程序实现图片移动缩放效果
2020/05/26 Javascript
Python进行数据科学工作的简单入门教程
2015/04/01 Python
Pyinstaller将py打包成exe的实例
2018/03/31 Python
对python cv2批量灰度图片并保存的实例讲解
2018/11/09 Python
Python API len函数操作过程解析
2020/03/05 Python
jupyter 导入csv文件方式
2020/04/21 Python
HTML5+CSS3实例 :canvas 模拟实现电子彩票刮刮乐代码
2016/12/30 HTML / CSS
html5 Canvas画图教程(2)—画直线与设置线条的样式如颜色/端点/交汇点
2013/01/09 HTML / CSS
捷克街头、运动和滑板一站式商店:BoardStar.cz
2019/10/06 全球购物
优秀体育委员自荐书
2014/01/31 职场文书
应届毕业生如何写求职信
2014/02/16 职场文书
幼儿园教师获奖感言
2014/03/11 职场文书
水毁工程实施方案
2014/04/01 职场文书
临床护理求职信
2014/04/26 职场文书
思想作风纪律整顿心得体会
2014/09/04 职场文书
自荐信格式范文
2015/03/04 职场文书
80后创业总结的9条职场用人思想,记得收藏
2019/08/13 职场文书
Python基础之元编程知识总结
2021/05/23 Python
MySQL数据库⾼可⽤HA实现小结
2022/01/22 MySQL
SQL Server删除表中的重复数据
2022/05/25 SQL Server