目录
一、函数
1.函数的概述
- 函数的作用:用来将一段功能代码封装到一起,并命名,在使用时,只需要使用命名即可。
- 优点:可以提高代码的开发效率,使代码更加简洁,提高代码的复用率。
2.函数的定义和使用
- 函数的定义格式:
def 函数名(参数列表):
函数功能代码...
注:函数体缩进
- 函数的调用格式:
函数名(值列表...)
在执行程序时,并不会执行函数,当在函数调用时,才会到函数定义的代码处去执行函数中的功能代码。
def print_123(): #定义函数
print(123) #编辑函数体
print_123() #函数调用
3. 函数的调用过程
- 函数在定义时,函数体中的代码是不执行的。
- 当产生函数调用时,程序才会跳转到函数体中执行函数的代码。
- 函数体中的代码执行完成后,回到调用处继续向后执行。
4. 函数的实参和形参
- 实参:实际参数,是在函数调用时,括号中出现的数据成为实参。
- 形参:形式参数,是在函数被调用时,接收函数调用传递过来的实际数据。
实参和形参在传递时,要一一对应。
def say_hi(name): #形参
print('Hellow',name)
say_hi('Tom') #实参
say_hi('Jack')
say)hi('Rose')
执行是相互独立的。
def my_sum(a,b):
print(a + b)
my_sum(1,2) #实参形参一一对应
my_sum(1) #TypeError: my_sum() missing 1 required positional argument: 'b'
实参形参必须一一对应。
5.函数返回值
return:返回一个函数的结果
格式:
return 数据
- 一个函数无论在哪里遇到return,那么这个函数都会直接结束执行,回到调用处。
- return后面可以没有数据,默认返回值为None空。
- 函数也可以没有return,函数默认返回None。
def get_num():
return 1
get_num() #没有输出结果
print(get_num()) # 1
a = get_num()
print(a) #get_num获取return中的数据1,在将1赋值给a并进行输出
def show():
print(1)
print(2)
return #return作用:返回数据,结束函数执行
print(3)
print(4)
print(a)
show()
a = show() #接收返回值,但由于return返回值为None,所以a所接收到的也为None
print(a)
print('over')
运行结果如下:
下面进行举例:
- 封装一个函数
- 从键盘获取一个数字
- 对数字进行整除2运算
def get_num():
a = input('请输入数字:')
return int(a) #对数据进行返回
#由于input所获取的任何数据都会自动转换为str类型,但需要对输入的数据进行整除运算,所以需要对str数据进行类型转换为int
print(get_num() // 2)
结果如下:
传参和输入数据的区别:当有参数后,不需要重新从键盘进行输入新数据,会将原有传入的参数进行覆盖。
def get_num(a,b):
a = input('请输入一个数字:')
b = input('请输入一个数字:')
return a + b
print(get_num())
#已经传入了参数数据,又在函数体中,对参数重新从键盘获取数据,会将原有传入参数数据覆盖掉
函数中包换多个return问题:
- 一个函数中存在多个return,但是只能有一个return语句有效。
- 在执行顺序上,第一个return有效。
def get_num():
return 1
return 2
return 3
print(get_num())
结果为:1
二、关系运算符及逻辑运算符
1.关系运算符
又称作比较运算符
关系运算符的结果为bool类型
2.逻辑运算符
- and: 一个0全为0
- or:一个 非零 为 非零
- not:反
注:在and、or对另个数据进行运算时,如果两个数据都为非零时,返回值注意为短路运算结果。既and返回结果为后面的,or为前面的。
a = 10
b = 20
print('and:',a and b)
print('or',a or b)
结果为:
三、if语句
1.if语句的格式和作用
- if的使用格式:
if 判断语句:
代码...
- if的作用:对条件进行判断,满足执行
演示:
def get_age(age):
if age >= 18:
print('可以上网')
age = inpput('请输入年龄:') #局部变量age
get_age(age)
2.if-else格式和作用
- if-else格式:
if 判断语句:
代码...
elif 判断语句:
代码....
elif 判断语句:
代码....
else:
代码...
- if-else作用:对数据进行判断,不同数据符合不同的判断条件,执行各自符合的代码。
3.if语句的嵌套
- 格式:
if 判断语句:
if 判断语句:
if判断语句:
......
- 作用:对数据进行逐步筛选判断。
举例:
- 从键盘获取成绩
- 利用if嵌套判断成绩等级
def get_score(score):
if 0 <= score <= 100:
if score >= 90:
print(f'{score},优秀')
elif 60 <= score <= 90:
print(f'{score},及格')
else:
print(f'{score},不及格')
else:
print(f'{score}不合法')
score = input("请输入分数:")
get_score(int(score))
四、随机数
1.randint
- 导入random模块
- random.randint( n1 , n2 ),通过该函数可以得到一个[n1 , n2]中的一个整数(包含n1,n2)
import random n = random.randint(1,10) print(n)
结果为:1-10随机数,包括1,10
2.randrange
- 导入random模块
- random.randrange( start , stop , step),返回指定递增基数集合中的一个随机数,基数默认值为1
- start -- 指定范围内的开始值,包含在范围内。
- stop -- 指定范围内的结束值,不包含在范围内。
- step -- 指定递增基数。默认为1
返回随机数的计算方法:
start + step 以此类推