Python基础语法(2)
循环
布尔类型
布尔类型字面量:
- True表示真(是,肯定)
- False表示假(否,否定)
比较运算符:== != > < >= <=
num1 = int(input())
num2 = int(input())
print(f"num1>num2的结果是:{num1>num2}")
print(f"num1<num2的结果是:{num1<num2}")
print(f"num1==num2的结果是:{num1==num2}")
if-else-elif
if
if 要判断的条件:
条件成立要执行的内容
例
num = 10
if num>0:
print("大于0")
print("不大于0")
if-else
if 条件:
条件满足的事情
else:
条件不满足的事情
num = int(input())
if num>0:
print("大于0")
else:
print("不大于0")
if-elif-else
if 条件1:
条件1满足的事情elif 条件2:
条件2满足的事情
else:
所有条件都不满足的事情
num = int(input())
if num>0:
print("大于0")
elif num<0:
print("小于0")
else:
print("等于0")
while循环
例
i=0
while i<100:
i+=1
print(i) #打印出100
猜数字案例
import random
num = random.randint(1,100)
flag = True
count = 0
while flag:
guess_num = int(input("请输入猜的数字:"))
count+=1
if guess_num == num
print("猜中了")
flag = False
else:
if guess_num > num:
print("猜大了")
else:
print("猜小了")
print(f"猜对了,你总共猜测了{count}次")
for循环
for 临时变量 in 待处理的数据集:
循环满足条件时执行的代码
例如遍历字符串
name = "abcdef"
for x in name
print(x)
同while循环不同,for循环无法定义循环条件,只能从被处理的数据集中,依次取出内容进行处理,所以理论上讲,Python的for循环无法构建无限循环
range语句
语法1:
range(num)
获取一个从0开始,到num结束的数字序列(不含num本身)
如range(5)取得的数据是:{0,1,2,3,4}
语法2:
range(num1,num2)
获得一个从num1开始,到num2结束的数字序列(不包含num2)
如range(5,10)取得的数据是{5,6,7,8,9}
语法3:
range(num1,num2,step)
获得一个从num1开始,到num2结束的数字序列(不含num2本身)
数字之间的步长,以step为准,step默认为1
如,range(5,10,2)取得的数据是:{5,7,9}
for x in range(10):
print(x)
for x in range(5,10):
print(x)
for x in range(5,10,2):
print(x)
变量和作用域
来看这段代码
for i in range(5)
print(i)
print(i)
从规范上讲,这个i是个临时变量,出了for循环的作用域就已经销毁了,但是实际上这里的i依旧可以打印出来
但是实际编程并不建议这样做,下面是改进规范版本
i = 0
for i in range(5)
print(i)
print(i)
break和continue
- continue关键字用于:中断本次循环,直接进入下一次循环
- break关键字用于:直接结束所在循环
continue:
break:
函数
函数:是组织好的,可重复使用的,用来实现特定功能的代码段。
函数定义
def 函数名(传入参数):
函数体
return 返回值
# 定义一个函数,输出相关信息
def say_hello():
print("hello world")
# 调用函数,让定义的函数开始工作
say_hello()
注意:
- 参数不需要,可以省略
- 返回值不需要,可以省略
函数的传参
# 定义2数相加的函数,通过参数接收被计算的2个数字
def add(x, y, z):
result = x + y + z
print(f"{x} + {y} + {z}的计算结果是:{result}")
# 调用函数,传入被计算的2个数字
add(5, 6, 7)
- 函数定义中的参数,称之为形式参数
- 函数调用中的参数,称之为实际参数
- 函数的参数数量不限,使用逗号分隔开
- 传入参数的时候,要和形式参数一一对应,逗号隔开
函数的返回值
# 定义一个函数,完成2数相加功能
def add(a, b):
result = a + b
# 通过返回值,将相加的结果返回给调用者
return result
# 返回结果后,还想输出一句话
# 函数体在遇到return后就结束了,所以写在return后的代码不会执行
print("我完事了")
# 函数的返回值,可以通过变量去接收
r = add(5, 6)
print(r)
None类型
如果函数没有使用return语句返回数据,函数依旧有返回值
Python中有一个特殊的字面量:None,其类型是:<class ‘NoneType’>
无返回值的函数,实际上就是返回了:None这个字面量None表示:空的、无实际意义的意思
函数返回的None,就表示,这个函数没有返回什么有意义的内容。
也就是返回了空的意思。
# 无return语句的函数返回值
def say_hi():
print("你好呀")
result = say_hi()
print(f"无返回值函数,返回的内容是:{result}")
print(f"无返回值函数,返回的内容类型是:{type(result)}")
# 主动返回None的函数
def say_hi2():
print("你好呀")
return None
result = say_hi2()
print(f"无返回值函数,返回的内容是:{result}")
print(f"无返回值函数,返回的内容类型是:{type(result)}")
# None用于if判断
def check_age(age):
if age > 18:
return "SUCCESS"
else:
return None
result = check_age(16)
if not result:
# 进入if表示result是None值 也就是False
print("未成年,不可以进入")
# None用于声明无初始内容的变量
name = None
注:None也可以用在if判断上
- 在if判断中,None等同于False
- 一般用于在函数中主动返回None,配合if判断做相关处理
例如
def check_age(age):
if age >18:
return "success"
return None
result = check_age(5)
if not result:
print("未成年,不可进入")
global关键字
使用 global关键字 可以在函数内部声明变量为全局变量
# global关键字,在函数内声明变量为全局变量
num = 200
def test_a():
print(f"test_a: {num}")
def test_b():
global num # 设置内部定义的变量为全局变量
num = 500
print(f"test_b: {num}")
test_a()
test_b()
print(num) #不用global的话这里打印的为200,用global就是500
原文地址:https://blog.csdn.net/m0_70289867/article/details/142915398
免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!