今天把沈洁元翻译过来的《A Byte of Python》(中文版本叫《简明Python教程)看完了,这本书确实还好不错,特别适合Python的初学者,书中的很多例子简明实用很好的说明了Python的特性,使初学者能感受到Python简洁实用的特性。书中的例子我也都实际操作了,发现Python确实相当好用。书最后中作者留给读者的一个操作题是关于命令行地址簿的程序。我自己动手编了下,程序写的还有点粗糙,不过功能已经实现了,程序代码如下:
import sys
ab={}
class Person:
def __init__(self,name,phone):
self.name=name
self.phone=phone
#print('(Initializing %s)'%self.name)
def search(self,name,phone):
if self.name in ab:
print('%s/'s phonenumber is %s'%(self.name,ab[name].phone))
else:
print('This is no man named %s'%name)
def delete(self,name,phone):
if self.name in ab:
del ab[name]
else:
print('This is no man name %s,so you can not delete'%name)
while True:
string=input('Enter something -->')
if string=='help':
print(' ------address book------/n /
select the function according to the number as below:/n /
add --------------1 /n /
search -----------2 /n /
delete -----------3 /n /
exit -------------4')
elif string=='1':
s1=input('Enter name:')
s2=input('Enter phone:')
p=Person(s1,s2)
ab[p.name]=p
elif string=='2':
s3=input('Enter name:')
if s3 in ab:
ab[s3].search(s3,ab[s3].phone)
else:
print('No %s in the address book'%s3)
elif string=='4':
sys.exit()
elif string=='3':
s4=input('Enter name:')
p=Person(s4,ab[s4])
p.delete(p.name,p.phone)
else:
print('Sorry the number is wrong,check again!')
一个运行的实例如下: