python基础:三层循环
三层循环基本演示:
break_flag = False #标记1
break_flag2 = False #标记2
break_flag3 = False #标记3
while 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 up
os.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)
break
f.close()
'''
购物车基本演示:
product_list = [
('Iphone6sPlus', 6888),
('MacBook', 11300),
('CookBook', 50),
('Coffee', 30),
('KindleFire', 1200),
('NB', 800),
]
user_asset = 10000 break_flag = False
shopping_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
python基础:三层循环的更多相关文章
- 第五篇:python基础之循环结构以及列表
python基础之循环结构以及列表 python基础之编译器选择,循环结构,列表 本节内容 python IDE的选择 字符串的格式化输出 数据类型 循环结构 列表 简单购物车的编写 1.pyth ...
- Python 基础 while 循环
Python 基础 while 循环 while 循环 在生活中,我们遇到过循环的事情吧?比如循环听歌.在程序中,也是存才的,这就是流程控制语句 while 基本循环 while 条件: # 循环体 ...
- python基础之循环结构以及列表
python基础之编译器选择,循环结构,列表 本节内容 python IDE的选择 字符串的格式化输出 数据类型 循环结构 列表 简单购物车的编写 1.python IDE的选择 IDE的全称叫做集成 ...
- python基础(六)循环
作者:Vamei 出处:http://www.cnblogs.com/vamei 欢迎转载,也请保留这段声明.谢谢! 循环用于重复执行一些程序块.从上一讲的选择结构,我们已经看到了如何用缩进来表示程序 ...
- python基础之循环
一.while循环 如果条件成立(true),重复执行相同操作,条件不符合,跳出循环 while 循环条件: 循环操作 (1)while循环示例 例:输入王晓明5门课程的考试成绩,计算平均成绩 i ...
- python基础之循环语句
一.if条件语句: 语法: 1.if单分支(单重条件判断) if expression: expr_true_suite 注释:expession为真执行代码expr_true_suite if单分支 ...
- python基础之循环与迭代器
循环 python 循环语句有for循环和while循环. while循环while循环语法 while 判断条件: 语句 #while循环示例 i = 0 while i < 10: i += ...
- Python基础->for循环、字符串以及元组
python流程控制>for循环.字符串以及元组 学习有关序列的思想.序列:一组有顺序的东西.所有的序列都是由元素组成的,序列中的元素位置是从0开始编号的,最后一个元素的位置是它长度减一. fo ...
- Python 基础06 循环
循环用于重复执行一些程序块.从上一讲的选择结构,我们已经看到了如何用缩进来表示程序块的隶属关系. 循环也会用到类似的写法. for 循环 for 循环需要预先设定好循环的次数(n) 然后执行隶属于fo ...
随机推荐
- iOS7与iOS8的比較
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvbGl1c2h1d2VpMDIyNA==/font/5a6L5L2T/fontsize/400/fill/I0 ...
- MySQL数据库最大连接数
MYSQL数据库安装完毕后,默认最大连接数是100. 命令: show processlist; 假设是root帐号,你能看到全部用户的当前连接.假设是其他普通帐号,仅仅能看到自己占用的连接. sho ...
- 兼容,原来在这里就已经開始--------Day34
看了两天,算是将w3cschool的javascript部分浏览了一遍.在脑海中大约有了一点概念,也才真切体会到:一入江湖深似海.欲穷此路难上难啊,至少如今看起来是遥遥无期.太多不懂, 太多茫然,只是 ...
- 分享 Java微信开发SDK
分享 Java微信开发SDK •发布于 4周前 •作者 朋也 •432 次浏览 •最后一次编辑是 2周前 •来自 分享 给大家分享两个java开发微信公众号的sdk jfinal-weixin ...
- 【JavaScript】JS的启动机制
DOM Event------------------>触发function() function 自身的调用 主要就是调用function 1.DOM Event 2.调用function
- Android下用Properties保存程序配置
读写函数分别例如以下: import java.io.FileInputStream; import java.io.FileOutputStream; import java.util.Proper ...
- 0c-40-ARC下多对象内存管理
1个人拥有1条狗. 问题1:人拥有狗作为成员变量,此时使用weak,释放过程是什么样? Person *p = [Person new]; Dog *d = [Dog new]; //设置人拥有dog ...
- 数据连接命令join
join主要用来将两个相关联的文件连接起来.两个文件相关联的意思是指这两个文件中有一些字段是关联的,例如两个文件的第1个字段都是学号,且每个学生的学号是唯一的.像这种具有唯一性关联的文件,就可以使用j ...
- C中存储类、链接和内存管理
在C语言中,有5种不同的存储类型,即存储类.在介绍存储类之前,需要首先简单介绍几个术语.如下: 作用域:描述程序中可以访问一个标识符的一个或多个区域.一个C变量的作用域可以是代码块作用域.函数原型作用 ...
- dispatch_group_async可以实现监听一组任务是否完成,完成后得到通知执行其他的操作。这个方法很有用,比如你执行三个下载任务,当三个任务都下载完成后你才通知界面说完成的了
dispatch_queue_t queue=dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, ); dispatch_group_ ...