QA不加班 QAbujiaban | QA不加班 [微信群:QAbujiaban] | 博客园 | 管理 | 写随笔

Python控制语句/循环语句

1.控制语句

1.1.判断语句 if...elif...else

#if 语句(比较/逻辑/成员均可)
#字符串/列表/元组/字典 为空返回False,非空返回True
#条件成立返回True,不成立返回False
ar = ""
list = []
tuple = ()
dic = {}
if ar:#条件成立返回True继续执行,不成立返回False不执行
    print("返回True执行此句...")
age=5
if age>10: #当if后面的语句满足条件,运算结果是True执行子语句
    print("恭喜你10岁了")
age = 34
if age<18:
    print("未成年")
elif age==18:
    print("成年了")
elif age==30:
    print("而立之年")
elif age==60:
    print("花甲之年")
else:
    print("你输入的年龄是{0}".format(age))
#input()该函数获取控制台输入内容,必须为int类型
age = int(input("请输入年龄:"))#将控制台输入内容转换为int类型
if age<18:
    print("未成年")
elif age==18:
    print("成年了")
elif age==30:
    print("而立之年")
elif age==60:
    print("花甲之年")
else:
    print("你输入的年龄是{0}".format(age))

1.2.练习题

第一题:
一个足球队在寻找年龄在10岁到12岁的小女孩(包括10岁和12岁)加入。编写一个程序,询问用户的性别(m表示男性,
f表示女性)和年龄,然后显示一条消息指出这个人是否可以加入球队,询问10次后,输出满足条件的总人数
#   10<=age<=12
#   sex = str(input("请问性别:"))
num = 0
for a in range(0,10):
    sex = str(input("请问性别:"))
    age = int(input("输入年龄:"))
    if sex=="f" and 10<=age<=12:
        num=num+1
        print("性别:{0},这个{1}岁的小女孩,第{2}个符合条件...".format(sex,age,num))
    else:
        pass
第二题:
输入num为四位数,对其中按照如下的规则进行加密:
1)每一位分别加入5,然后分别将其替换为该数除以10取余后的结果 
2)将该数的第一位和第4位互换,第二位和第三位互换 
3)最后合起来作为加密后的整数输出
num = int(input("请输入一个四位数:"))
if 999<num<=9999:
    num_str = str(num)
    a = num_str[0]
    b = num_str[1]
    c = num_str[2]
    d = num_str[3]
    num_new = d+c+b+a
    print(int(num_new))
else:
    print("非四位数")
第三题:
一家商场在降价促销。如果购买金额50-100元(包含50元和100元)之间,会给10%的折扣,
如果购买金额大于100元会给20%折扣,编写一个程序,询问购买价格,再显示出折扣(10%或20%)和最终价格
price = int(input("购买了多少钱的商品:"))
if 50<=price<=100:
    print("购买金额:{0},享受折扣:{1},折扣金额:{2},最终价格:{3}".format(price,"10%",price*0.1,price-price*0.1))
elif price>100:
    print("购买金额:{0},享受折扣:{1},折扣金额:{2},最终价格:{3}".format(price,"20%",price*0.2,price-price*0.2))
else:
    print("无折扣...")
第四题:
生成随机整数,从1-9取出来。然后输入一个数字,来猜,如果大于,则打印bigger。
小的,则打印less。如果相等,则打印equal
import random
num = random.randint(1,10)
input_num = int(input("输入一个数字:"))
if num==input_num:
    print("{0} == {1}  输出:{2} | {3}".format(num,input_num,True,"equal"))
elif num>input_num:
    print("{0} > {1}  输出:{2} | {3}".format(num,input_num,True,"bigger"))
elif num<input_num:
    print("{0} < {1}  输出:{2} | {3}".format(num,input_num,True,"less"))
else:
    print("随机数:{0}, 输入数字:{1}".format(num,input_num))

2.控制语句 for&while

2.1.for循环

#for循环
#for item in 某个数据类型:字符串、列表、元组、字典、集合等
    #代码块
#遍历字符串
str_new = "abcdefg"
for item in str_new:#for循环遍历str_new里面的元素,然后赋值给item
    print(item)
    
#遍历列表
list_new = [1,2,3,4,5,6,7,23]
for item in list_new:
    print(item)

#遍历元组
tuple_new = (1,2,3,4,5,6,22222)
for uu in tuple_new:
    print(uu)

#遍历出字典中所有的key
dit = {"name":"张三","password":"123456","age":23}
for item in dit:
    print(item)

 2.1.1.for循环中的range()

#range()函数  range(m,n,k) m头,n尾,k步长  取头不取尾
#range函数  生成整数序列
#for item in range(x,y):
    #代码块
for item in range(5):#range(m,n,k)  m默认为0,k默认为1
    print(item)#0 1 2 3 4

2.1.2.for循环

#遍历出L中所有的元素
L = [1,4,2,7,9]
for item in range(0,len(L)-1):
    print(L[item])
#请利用for循环和range函数,完成1-100整数相加的和(包含1,100)
sum = 0
for item in range(1,101):
    sum = sum+item
print(sum)

2.1.3.嵌套循环

#打印出嵌套列表中所有的值
L = [["a","c","c","e"],["rr","dd","ww"],["aa","ww","qq"],["hh","tt","uu","xx","ii"]]
for item in range(0,len(L)):
    for item2 in range(0,len(L[item])):
        print(L[item][item2])
#利用嵌套for循环生成一个直角三角形
# *
# **
# ***
# ****
# *****
for a in range(0,5):
    for b in range(0,a+1):
        print("*",end='')
    print("")

2.2.while循环

#while 控制循环
#语法:
#while 条件表达式: 逻辑/程远/比较/空数据/布尔值
    #代码块

#执行规律:首先判断while 后面的条件大大是是否成立
#如果True那就执行代码块,执行完毕后,继续判断--->如果True那就执行代码块
#否则不进入内部执行
while 3==2:
    print("执行通过")
a = 1#初始值
while a<10:
    print("来了老弟!!!")
    a=a+1
#利用while循环实现1-100整数相加
num = 0
sum = 0
while num<=100:
    sum = sum+num
    num=num+1
print(sum)
#while 与 if 语句搭配使用 break,continue
#break 结束
#continue 结束当前循环,继续下次循环

 

posted @ 2022-12-15 18:05  味卜鲜码(QA不加班)  阅读(229)  评论(1编辑  收藏  举报
QA不加班 QAbujiaban | QA不加班 [微信群:QAbujiaban]