注释
-
注释的作用
通过用自己熟悉的语言,在程序中对某些代码进行标注说明,这就是注释的作用,能够大大增强程序的可读性。 -
注释的分类及语法
注释分为两类:单行注释 和 多行注释。
单行注释
只能注释一行内容,语法如下:
#
多行注释
"""
第一行注释
第二行注释
第三行注释
"""
'''
注释1
注释2
注释3
'''
输出
print('hello Python')
age = 18
print(age)
# 需求:输出“今年我的年龄是18岁”
占位符和格式输出
%06d,表示输出的整数显示位数,不足以0补全,超出当前位数则原样输出。
%.2f,表示小数点后显示的小数位数。
内置函数format
format()用于字符串格式化,功能非常强大,格式是str.format(),format函数可以接受不限个参数,位置可以不按顺序。
f-格式化字符串
f-string是格式化字符串的一种很好的新方法。与其他格式化方式相比,它不仅更易读,更简洁,不易出错,而且速度更快!格式为:f'{表达式}'
转义字符
- \ - 反斜杠
- ’ - 单引号
- " - 双引号
- \n - 换行
- \r - 回车
- \t - 制表符(Tab)
- \b - 退格
- \f - 换页
- \v - 垂直制表符
- \a - 响铃(Bell)
- \ooo - 八进制数(例如 \101 代表字母 ‘A’)
- \xhh - 十六进制数(例如 \x41 代表字母 ‘A’)
输入
input("提示信息")
输入的特点
- 当程序执行到input,等待用户输入,输入完成之后才继续向下执行。
- 在Python中,input接收用户输入后,一般存储到变量,方便使用。
- 在Python中,input会把接收到的任意用户输入的数据都当做字符串处理。
条件语句
if语法
if 条件:
条件成立执行的代码1
条件成立执行的代码2
......
if True:
print('条件成立执行的代码1')
print('条件成立执行的代码2')
# 下方的代码没有缩进到if语句块,所以和if条件无关
print('我是无论条件是否成立都要执行的代码')
if…else…
if 条件:
条件成立执行的代码1
条件成立执行的代码2
......
else:
条件不成立执行的代码1
条件不成立执行的代码2
......
多重判断
if 条件1:
条件1成立执行的代码1
条件1成立执行的代码2
......
elif 条件2:
条件2成立执行的代码1
条件2成立执行的代码2
......
......
else:
以上条件都不成立执行执行的代码
if嵌套
if 条件1:
条件1成立执行的代码
条件1成立执行的代码
if 条件2:
条件2成立执行的代码
条件2成立执行的代码
- if嵌套执行流程
三目运算符
三目运算符也叫三元运算符。
语法如下:值1 if 条件 else 值2
a = 1
b = 2
c = a if a > b else b
print(c)
循环
while的语法
while 条件:
条件成立重复执行的代码1
条件成立重复执行的代码2
......
# 循环的计数器
i = 0
while i < 10:
print('Hello World')
i += 1
print('任务结束')
break和continue
i = 1
while i <= 5:
if i == 4:
print(f'吃饱了不吃了')
break
print(f'吃了第{i}个苹果')
i += 1
i = 1
while i <= 5:
if i == 3:
print(f'大虫子,第{i}个不吃了')
# 在continue之前一定要修改计数器,否则会陷入死循环
i += 1
continue
print(f'吃了第{i}个苹果')
i += 1
break和continue是循环中满足一定条件退出循环的两种不同方式
for循环
for 临时变量 in 序列:
重复执行的代码1
重复执行的代码2
......
str1 = 'Hello World'
for i in str1:
print(i)
else
- while…else
while 条件:
条件成立重复执行的代码
else:
循环正常结束之后要执行的代码
i = 1
while i <= 5:
print('Hello World')
i += 1
else:
print('执行完毕')
- for…else
for 临时变量 in 序列:
重复执行的代码
...
else:
循环正常结束之后要执行的代码
str1 = 'Hello World'
for i in str1:
print(i)
else:
print('循环正常结束之后执行的代码')
函数
函数的定义:
- 函数是一段具有特定功能的、可重用的语句组,用函数名来表示并通过函数名进行功能调用。函数也可以看作是一段具有名字的子程序,可以在需要的地方调用执行,不需要在每个执行的地方重复编写这些语句。每次使用函数可以提供不同的参数作为输入,以实现对不同数据的处理;函数执行后,还可以反馈相应的处理结果。
- 函数能够完成特定功能,对函数的使用不需要了解函数内部实现原理,只要了解函数的输入输出方式即可。严格地说,函数是一种功能抽象。
- 有些函数是用户自己编写的,称为自定义函数: Python 安装包也自带了一些函数和方法,包括Python内置的函数(如absO. eval( ). Python标准库中的函数(如math库中的sqrt( )等。
- 使用函数主要有两个目的:降低编程难度和代码重用。函数是一种功能抽象,利用它可以将-一个复杂的大问题分解成一系列简单的小问题,然后将小问题继续划分成更小的问题,当问题细化到足够简单时,就可以分而治之,为每个小问题编写程序,并通过函数封装,当各个小问题都解决了,大问题也就迎刃而解。这是一种自顶向下的程序设计思想。函数可以在一个程序中的多个位置使用,也可以用于多个程序,当需要修改代码时,只需要在函数中修改一次,所有调用位置的功能都更新了,这种代码重用降低了代码行数和代码维护难度。
python使用def保留字定义一个函数,语法格式如下:
def <函数名>(<参数列表>):
<函数体>
<返回值列表>
函数名可以是任何有效的Python标识符;
参数列表是调用该函数时传递给它的值,可以有零个、一个或多个,当传递多个参数时各参数由逗号分隔,当没有参数时也要保留圆括号。函数定义中参数列表里面的参数是形式参数,简称为“形参”。
函数体是函数每次被调用时执行的代码,由一行或多行语句组成。
当需要返回值时,使用保留字return 和返回值列表,否则函数可以没有return 语句,在函数体结束位置将控制权返回给调用者
函数调用和执行的一般形式
<函数名>(<参数列表>)
函数的调用
程序调用一个函数需要执行以下4个步骤。
-
调用程序在调用处暂停执行。
-
在调用时将实参复制给函数的形参。
-
执行函数体语句。
-
函数调用结束给出返回值,程序回到调用前的暂停处继续执行
函数的返回值
- return语句用来退出函数并将程序返回到函数被调用的位置继续执行。return语句可以同时将0个、1个、或多个函数运算后的结果返回给函数被调用处的变量
def func(m,n):
return m*n
s = func("hello~",2)
print(s)
函数也可以没有return,此时函数并不返回值
全局变量与局部变量
- 全局变量:指在函数之外定义的变量,一般没有缩进,在程序执行全过程有效。
- 局部变量:指在函数内部使用的变量,仅在函数内部有效,当函数退出时变量将不存在
注意事项:
-
简单数据类型变量无论是否与全局变量重名,仅在函数内部创建和使用,函数退出后变量被释放,如有全局同名变量,其值不变。
-
简单数据类型变量在用global保留字声明后,作为全局变量使用,函数退出后该变量保留且值被函数改变。
-
对于组合数据类型的全局变量,如果在函数内部没有被真实创建的同名变量,则函数内部可以直接使用并修改全局变量的值。
-
如果函数内部真实创建了组合数据类型变量,无论是否有同名全局变量,函数仅对局部变量进行操作,函数退出后局部变量被释放,全局变量值不变。