博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
python基础:三层循环
阅读量:6908 次
发布时间:2019-06-27

本文共 5082 字,大约阅读时间需要 16 分钟。

三层循环基本演示:

break_flag = False                                                     #标记1break_flag2 = False                                                    #标记2break_flag3 = False                                                    #标记3while not break_flag:                                                  #因为标记是False,所以是 not break_flag成立循环    print("the first layer is running...")    option=input(">>>[b:back, q:quit,c:continue]:").strip()            #让买家选择,strip()去除输入时空格    if option == "b":        break_flag2 = True                                             #第一层,没得退,所以break_flag2=true,不断打印'the first...'    elif option == "q":        break_flag = True                                              #选择退出,把循环条件改为true,就能退出循环    else:        break_flag3,break_flag2 = False,False                          #既不是b,也不是q,则第二三层循环条件继续成立,往下走    while not (break_flag or break_flag2):                             #进入第二层,那么第一层循环条件必须是false,q时随时可以退出        print("in layer two...")        option=input(">>>[b:back, q:quit,c:continue]:").strip()        if option == "b":            break_flag2 = True                                         #退到第一层,因为else:break_flag3,break_flag2 = False,False        elif option == "q":            break_flag = True                                          #退出整个循环        else:            break_flag2,break_flag3 = False,False                      #这里可以实现第二层第三层的切换        while not(break_flag or break_flag2 or break_flag3):           #与上面同理            print("in layer three...")            option=input(">>>[b:back, q:quit,c:continue]:").strip()            if option == "b":                break_flag3 = True            elif option == "q":                break_flag = True

文件内容查找和替换:

import os                                                       #os操作系统模块f = open("test.txt","r")                                        #旧文件读模式f_new = open("text_new.txt","w")                                #新文件写模式for line in f:                                                  #遍历旧文件    if line.startswith("alex"):                                 #找到要替换的行        new_line = line.replace("alex","ALEX LI....")           #替换好赋值给新行        f_new.write(new_line)                                   #把新行写到新文件    else:        f_new.write(line)                                       #如果找不到,则把原文写到新文件f.close()f_new.close()os.rename("test.txt","test.txt.bak")                            #把旧文件改名为back upos.rename("text_new.txt","test.txt")                            #新文件覆盖旧文件'''f = open("test.txt","r+")for line in f:    if line.startswith("alex"):        new_line = line.replace("alex","ALEX LI")        print("current pos:",f.tell())                          #显示指针的位置        f.seek(37)                                              #把指针指到该位置        f.write(new_line)        breakf.close()'''

购物车基本演示:

product_list = [    ('Iphone6sPlus', 6888),    ('MacBook', 11300),    ('CookBook', 50),    ('Coffee', 30),    ('KindleFire', 1200),    ('NB', 800),]user_asset = 10000break_flag = Falseshopping_cart = []paid_list = []while not break_flag:    for index,i in enumerate(product_list):        print(index,i[0],i[1])    user_choice = raw_input("[quit,check,pay]What do you want to buy?:").strip()    if user_choice.isdigit():        user_choice = int(user_choice)        if user_choice < len(product_list) and user_choice > -1:            shopping_cart.append(product_list[user_choice])            print("\033[32;1mJust added [%s,%s] in to your shopping cart\033[0m" %(product_list[user_choice]))        else:            print("\033[31;1mProduct [%s] is not exist!\033[0m")    elif user_choice == "check":        total_price = 0        print("\033[34;1mYou have bought below products...:\033[0m")        for index,p in enumerate(shopping_cart):            print(index,p)            total_price += p[1]        print("Total Price:\033[31;1m[%s]\033[0m" % total_price)    elif user_choice == "pay":        total_price = 0        print("\033[34;1mYou have bought below products...:\033[0m")        for index,p in enumerate(shopping_cart):            print(index,p)            total_price += p[1]        print("Total Price:\033[31;1m[%s]\033[0m" % total_price)        pay_confirm = raw_input("\033[31;1mGoing to pay?\033[0m").strip()        if pay_confirm == "y":            money_left = user_asset - total_price            if money_left > 0:                paid_list += shopping_cart                shopping_cart = []                user_asset = money_left                print("\033[31;1mYou have just paid[%s], your current balance is [%s]\033[0m" %(total_price,money_left))                go_confirm = raw_input("press any key to continue shopping!").strip()            else:                print("\033[31;1mYour current balance is [%s], still need [%s] to pay the whole deal!\033[0m" %(user_asset,total_price-user_asset))    elif user_choice == "quit":        if shopping_cart:            print("You still have some product haven't paid yet!")        else:            print("Thanks for comming!")            break_flag = True

  

转载于:https://www.cnblogs.com/alan-babyblog/p/5168181.html

你可能感兴趣的文章
我的友情链接
查看>>
用户如何获得***服务---步骤与效果
查看>>
安全运维之端口安全
查看>>
【转载】什么是站点,Active Directory系列之十一
查看>>
Red Hat Enterprise Liunx6 配置apache 全攻略
查看>>
[Template]HTML Template 简介
查看>>
我的友情链接
查看>>
禁止 centos 休眠
查看>>
亚马逊的EC2云计算系统
查看>>
SCOM2012功能测试(14)—创建.NET应用程序性能监控
查看>>
IEnumerable和IEnumerable<T>接口
查看>>
A.约数个数的和
查看>>
BZOJ1041:[HAOI2008]圆上的整点(数论)
查看>>
双色球
查看>>
生成XML文件,并保存到本地文件
查看>>
C# 中的 App.config 文件配置
查看>>
删除一个链表中的重复元素
查看>>
Linux 2440 LCD 控制器【转】
查看>>
metabase实施文档
查看>>
差分约束 【bzoj2330】[SCOI2011]糖果
查看>>