Python之丰富的else语句
除了前面说到的和if搭配使用外,在Python中else还可以和while搭配:
def showMaxFaction(num):
count = num//2
while(count>1):
if num%2==0:
print("%d的最大约数是%d" % (num,count))
break
count-=1
else:
print("%d是素数。" % (num))
num = int(input("请输入一个数:"))
showMaxFaction(num)
运行结果如下图:
和try搭配,没有捕获异常的时候执行else语句中的内容:
try:
int('abc')
#int(1)
except ValueError as reason:
print('出错了:'+ str(reason))
else:
print('没有任何异常!')
运行结果如下:
放开注释中的内容,并注释掉语句int('abc'),运行结果如下:
Python之简洁的with语句:
try:
f = open('data.txt','w')
for each_line in f:
print(each_line)
except OSError as reason:
print('出错了:'+ str(reason))
finally:
f.close()
使用with语句,将上述代码变得更为简洁:
try:
with open('data.txt','w') as f:
for each_line in f:
print(each_line)
except OSError as reason:
print('出错了:'+ str(reason))
说明:with open 会自动关闭文件,不用finally了
Python之图形用户界面(EasyGui)
安装EasyGui教程:
导入EasyGui:
法一:最简单的导入语句
>>> import easygui
>>> easygui.msgbox('Hello!')
弹出窗口,郑州性病医院哪家好 http://mobile.zzyyrl.com/
如果你使用上面这种形式导入的话,那么你使用EasyGui的函数的时候,就必须在函数的前面加上前缀easygui
法二:
>>> from easygui import *
>>> msgbox('Hello beauty!')
弹出窗口,
这使得我们更容易调用EasyGui的函数
法三:推荐
>>> import easygui as g
>>> g.msgbox('Hello beautiful girl!')
弹出窗口,
注: 建议不要在IDLE上运行EasyGui,因为EasyGui是运行在Tkinter上并拥有自身的事件循环,而IDLE也是Tkinter写的一个应用程序并也拥有自身的事件循环,因此当两者同时运行的时候,有可能会发生冲突,且带来不可预测的结果。因此如果发现自己EasyGui程序有这样的问题,尝试在IDLE外去运行程序。
简单应用:
import easygui as g
import sys
while 1:
g.msgbox('欢迎进入界面小游戏')#显示一个只有ok按钮的对话框
msg = '请问你想学什么'
title = 'easygui实现简单互动'
choices = ['琴棋书画','诗词歌赋','金融','编程']
choices = g.choicebox(msg,title,choices)#显示一个可以选择的框(4个选项)
#note that we convert choice to string ,in case
#the user cancelled the choice ,and we got None
g.msgbox('你的选择是:'+str(choices),'结果')#显示choice
msg = '你希望重新开始吗?'
title = '请选择'
if g.ccbox(msg,title):#show a continue/cancel dialog
pass#user chose Contiue
else:
sys.exit(0)
#user chose Cancel
运行,
注:界面的大小和文字样式可以在EasyGui的源代码中修改——easygui.py
来源:oschina
链接:https://my.oschina.net/u/4386652/blog/4316436