Learning Diary for Python - 4
一、三目运算符
1、C语言
- 表达式 - ?值1:值2
- 运行规则:如果表达式为真,运算结果为值1,否则为值2
2、python
-
表达式 - 值1 if 表达式1 else 值2
-
运行规则:如果表达式的结果为True,结果为值1,否则为值2.
#示例: #1 a=100 result=1 if a>100 else 0 print(result) #2 a=100 a+=1 if a>10 else -1 print(a) #3 a=100 a=a+1 if a>10 else a-1#值可以为运算符 print(a)
二、while循环
1、语法
#格式:
while 条件语句:
循环体
其他代码
名词 | 功能 |
---|---|
while | 关键字;固定写法 |
条件语句 | 有结果的表达式(赋值语句除外) |
: | 固定写法 |
循环体 | 与while保持一个缩进的一条或多条语句;会被重复执行的代码 |
2、运行规则
先判断条件语句是否为True,如果是则执行循环体;执行后再进行判断并执行,直到条件语句结果为False
3、用法技巧
#循环5次
times=0
while times<5
print('循环')
n+=1
#无限循环
while True:
print('循环')
4、for与while用法选择
- 循环次数确定使用for;不确定使用while
- for无法解决的问题再使用while
#登录系统
acount={"acount1":"123","acount2":"234","acount3":"345"}
while True:
name =input ('请输入用户名:')
if name in acount:
break
else:
print('用户名不存在')
while True:
password = input ('输入密码:')
if acount[name] == password:
print('进入')
break
else:
print('密码错误')
continue
三、循环关键字
1、continue
- 用法:结束一次循环(结束当前循环)
2、break
-
用法:结束整个循环
#猜数字小游戏 import random#导入random模块 my_num = random.randint(1, 100)#产生一个1到100(闭区间)的随机数。 times = 1 while True: print(f'开始第 {times} 次猜数字') you_num = input("请输入一个整数(1-100):") if you_num=='': continue you_num = int(you_num) if not 0<you_num<=100: continue if my_num == you_num: print(f'恭喜你猜对了,数字为{my_num}') break else: if my_num > you_num: print('数字猜小了') else: print('数字猜大了') times += 1
3、else关键字
-
完整的循环结构
-
完整的for:
for 变量 in 序列: 循环体 else: 代码段
-
完整的while:
while 条件语句: 循环体 else: 代码段
-
关于else:
- else的存在不会影响原循环的执行
- 循环除break外结束时执行else后的代码段
# 判断字符串是否是存数字字符串 #方法一 str='123456789ab123' for x in str1: if not '0' <= x <= '9': print(str1, '不是纯数字字符串') break else: print(str1, '是纯数字字符串') #方法二 str1 = '123456789ab123' flag = True for x in str1: if not '0' <= x <= '9': flag = False break if flag: print('纯数字字符串')
-