python基础语法二

一、条件判断
1.1 if…else…语句

if…else… 字面意思就是 如果…否则…

num = 3
# 通过取模运算判断num是否能被2整除
if num % 2 == 0:
	print(str(num) + "是一个偶数")
else:
    print(str(num) + "是一个奇数")

注意两条print语句前面的缩进

1.2 elif

当你有三个及以上的判断条件的时候就很有必要使用elif来做多次判断

score = 59
if score < 60:
    print("您的考试成绩不及格")
elif score <70 and score >=60:
	print("您的考试成绩合格")
elif score < 90 and score >= 70
    print("您的考试成绩良好")
else:
    print("您的考试成绩优秀")
1.3 if 条件嵌套

嵌套循环可以嵌套无数层,但通常我们都建议尽量减少嵌套的层数,以增加代码的可读性。

score = 100
if score >= 60:
	if score < 70:
		print("您的考试成绩为合格")
	elif score < 90:
		print("您的考试成绩为良好")
	else:
		print("您的考试成绩为优秀")
else:
	print("您的考试成绩不及格")
1.4 与逻辑运算符组合
if age > 18 and age < 60:
	print("你已经不是个孩子啦,该去工作啦")

## 上下两中写法都可以
age = 22
if 18 < age < 60:
	print("你已经不是个孩子啦,该去工作啦")
1.5 自动类型转换

if 和 elif 的后面总是跟着一个表达式,这个表达式的结果必须是True或者False,如果表达式运算出来的

结果不是一个布尔值,则会自动将结果转换为布尔值,无论它是什么类型的值。转换的结果遵循布尔转换规律。

count = 0
if count:
	print("条件成立")
else:
	print("条件不成立")

注意:count 为 0值、None 和空字符串转换为布尔值后都是False

二、循环控制
2.1 while循环语句
lap = 0
while lap < 10:
	lap += 1
	print("我跑完了第" + str(lap + 1) + "圈")

在这里插入图片描述
在这里插入图片描述

2.2 for循环语句

for循环可以用来遍历序列,序列指的是一个可迭代的有序的集合,比如字符串就是一个序列

seq = "hello"
for s in seq:
	print(s)

在这里插入图片描述

我们可以修改一下之前写的跑圈的while循环,改用for循环加range函数来实现:

for lap in range(10):
	print("我跑完了第" + str(lap + 1) + "圈")
2.3 嵌套循环

嵌套循环:顾名思义就是循环里面再循环

##在控制台中打印出指定边长的长方形或者正方形图案
# 指定长方形的宽和高
width, height = 10, 5
# 因为是从上往下开始打印,所以先遍历高度
for i in range(height):
	for j in range(width):
		print("*", end="")
	print()

在这里插入图片描述

打印出这样一个九九乘法表

for i in range(1, 10):
    for j in range(1, i + 1):
        print("%s*%s=%s" % (j, i, i * j), end=" ")
    print()

在这里插入图片描述

2.4 break和continue

有时候在循环内部,我们需要临时略过某一次循环或者干脆跳出整个循环,这时候就需要用到break和 continue。

使用for循环和continue来打印出10以内的所有奇数相加的式子,并求出它们 的和

total = 0
for i in range(10):
    if i % 2 == 0:
        continue
    print(i, end=" + ")
    total += i
print(" = %s" % total)

## 1 + 3 + 5 + 7 + 9 +  = 25

关键字break用来打断整个循环并跳出

给一个字符串,这个字符串是一个小数,要求打印出小数的整数部分

s = "238.9237834829"
for i in s:
    if i == '.':
        print()
        break
    print(i, end='')

在这里插入图片描述

三、智能密码锁程序

最近几年很流行的智能密码锁程序,除了可以用指纹开锁、人脸识别开锁外,都会有密码开锁的功能,以防万一。密码开锁功能是这样的,首先设定好密码,以后每次开锁的时候只要输入的数字中含有设定 的密码,就视为解锁成功。这样的设定是为了防止别人的窥探,具有更高的安全性。

首先,由于涉及到了输入,先来了解一下Python内置的输入函数: input

password = input("请设置您的密码")

在执行到这行代码时,控制台就变成光标闪烁的状态,用户可以用键盘进行字符的输入,输入完成后,再输入一个回车表示输入结束,输入的字符串赋给等号左边的变量。

# 设置初始密码
password = "123"
while True:
    pwd = input("请输入您想要设置的密码:")
# 如果没有输入任何密码,则使用初始密码作为密码
    if not pwd:
        break
    confirm_password = input("请再次输入您的密码:")
    if pwd == confirm_password:
        password = pwd
        break
    else:
        print("您两次输入的密码不一致,请重新输入。")
print("您的初始密码已设置为:" + password)
print("进入开锁程序。。。")
# 开锁
while True:
    input_pwd = input("请输入您的密码:")
# 判断输入的密码中是否包含密码
    if password in input_pwd:
        print("开锁成功!")
        break
    else:
        print("您输入的密码有误,请重新输入")

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值