需求:
·定义input_password函数,提示用户输入密码.如果用户输入长度<8,抛出异常
·如果用户输入长度>=8,返回输入的密码
def input_password():
while True:
password=input('请输入密码')
try:
if len(password)>8:
raise Exception("len too long!")
else:
pass
finally:
print('执行一次')
print(input_password())
练习
·10-8猫和狗︰创建两个文件cats.txt和dogs.txt,在第一个文件中至少存储三只猫的名字,在第二个文件中至少存储三条狗的名字。编写一个程序,尝试读取这些文件,并将其内容打印到屏幕上。
将这些代码放在一个try-except代码块中,以便在文件不存在时捕获FileNotFound错误,并打印一条友好的消息。
将其中一个文件移到另一个地方,并确认except代码块中的代码将正确地执行。
def cat_fn():
try:
with open(file='cats.txt',mode='r') as cat_file:
# cat_file.write('蓝猫,虹猫,黑猫')
cat_content=cat_file.read()
print(cat_content)
except FileNotFoundError as e:
print('文件不存在',e)
print(cat_fn())
def dog_fn():
try:
with open(file='dogs.txt',mode='r') as dog_file:
# dog_file.write('狼狗,博美,藏獒')
dog_content=dog_file.read()
print(dog_content)
except FileNotFoundError as e:
print('文件不存在',e)
print(dog_fn())
# 10-9沉默的猫和狗:修改你在练习10-8中编写的except代码块,让程序在文件不存在时一言不发。
def dog_fn():
try:
with open(file='dogs.txt', mode='r') as dog_file:
# dog_file.write('狼狗,博美,藏獒')
dog_content = dog_file.read()
print(dog_content)
except FileNotFoundError:
pass
print(dog_fn())
综合练习
·常见单词:访问项目 Gutenberg (http:llgutenberg.org) ,并找一些你想分析的图书。
下载这些作品的文本文件或将浏览器中的原始文本复制到文本文件中。你可以使用方法count()来确定特定的单词或短语在字符串中出现了多少次。
例如,下面的代码计算'row'在一个字符串中出现了多少次:
# .>>> line = "Row, row, row your boat"
# .>>> line.count("'row') 2
# . >>> line.lower().count('row') 3
# ·请注意,通过使用lower()将字符串转换为小写,可捕捉要查找的单词出现的所有次数,而不管其大小写格式如何。
# ·编写一个程序,它读取你在项目Gutenberg 中获取的文件,并计算单词'the'在每个文件中分别出现了多少次。
Gutenberg = 'http: llgutenberg.org'
def fn():
try:
times=Gutenberg.lower().count('the')
print(times)
except Exception as e:
print('',e)
fn()
|