(标答出处: 鱼C论坛)
《零基础入门学习Python》
测试题:
在python中,
1、else 和 if 语句搭配,构成 “如果条件成立则怎么样,或者怎么样”
2、else 和 (for或者while语句循环),构成“循环条件完成后干什么,否则不能干什么”
3、else 和 异常处理 try 搭配 ,构成“没有问题那就干吧”
会跳过else语句,因为当else语句和while连用时,只有当所有循环全部执行结束时,才会才会执行else中的内容,而break是直接跳出循环,所以不会。
会打印出(因为try语句中没有异常):
‘ABC’
‘GHI’
‘JKL’
使用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语句会自动处理文件的打开和关闭,如果中途出现问题,会执行清理代码,然后确保文件自动关闭
with A() as a,B() as b :
suite
动动手:
def file_compare ( file1 , file2 ) :
with open(file1) as f1 , open(file2) as f2 :
count = 0 #统计行数
differ = [] #统计不一样的数量
for line1 in f1 :
line2= f2.readline()
count += 1
if line1 != line2 :
differ.append(count)
return differ
file1 = input ("请输入需要比较的头一个文件名:")
file2 = input ("请输入需要比较的另一个文件名:")
differ = file_compare(file1,file2)
if len(differ) == 0:
print("这两个文件完全一样!")
else :
print("两个文件共有【%d】处不同" %len(differ))
for each in differ :
print("第 %d 行不一样" % each)
def tonguxnlu() :
print("|---欢迎进入通讯录程序---|")
print("|---1:查询联系人资料 ---|")
print("|---2:插入新的联系人 ---|")
print("|---3:删除已有联系人 ---|")
print("|---4:退出通讯录程序 ---|")
dict1 = {}
zhongzhi = True
while zhongzhi == True :
temp1 = int (input ("请输入相关的指令代码:"))
if temp1 == 1 :
lianxiren = input ("请输入查询联系人的姓名:")
try :
print (lianxiren + ':' +dict1[lianxiren],end ="\n\n")
except KeyError :
print ("查询失败,此人不再通讯录中!")
elif temp1 == 2:
lianxiren = input ("请输入联系人姓名:")
try :
print ("您输入的姓名在通讯录中存在 -->> ", dict1[lianxiren])
temp2 = input ("是否修改用户资料(YES/NO):")
if temp2 == 'YES' :
lianxidianhua = input ("请输入用户联系电话:")
dict1[lianxiren] = lianxidianhua
print ("修改成功!")
print ("\n")
else :
print ("\n")
continue
except KeyboardInterrupt :
dict1[lianxiren] = input ("请输入用户联系电话:")
print ("\n")
elif temp1 == 3:
lianxiren = input ("请输入要删除的联系人姓名:")
try :
del dict1[lianxiren]
print ("删除成功!")
print ("\n")
except KeyboardInterrupt :
print ("删除失败此联系人不再通讯录中!")
elif temp1 == 4:
print ("|---感谢使用通讯录程序---|")
zhongzhi = False
tonguxnlu()