码迷,mamicode.com
首页 > 其他好文 > 详细

pathon 学习(一)

时间:2016-05-10 12:43:19      阅读:601      评论:0      收藏:0      [点我收藏+]

标签:

 

实践证明,久坐伤妖。周末最难受的时候,穿袜子手都够不着。卧床养妖时,看了一遍《Pathon简明教程》。想起曾回答过同事的一个问题,“计算机方面的知识早荒废多年”。可是这方面的兴趣还有没有磨灭完。 

以前学过一段时间C/C++,略通皮毛,也没写过多少代码;最长的也不足千行,最终还是半成品。遥想当年,那还是在乡下做老师时的故事。翻看Pathon,是由于工作的原因,想了解一些数据分析方面的知识(不提数学,提起来都是伤心事)。 

对照相关语法写的一段代码:

"""通讯录管理

"""

class Address:
    p = {}
    personNum = 0
    
    #初始化通讯录
    def __init__(self):
        self.personNum = 0
        print(‘现有%d位联系人.‘%self.personNum)
                
    #查找指定姓名的联系人
    def search(self,name):
        if(name in self.p):
            return 1
        else:
            return 0
    
    #添加联系人
    def addPerson(self):
        print(输入姓名:),
        name = input()
        print(输入电话号码:),
        tele = input()
        self.p[name]= tele
        self.personNum += 1

        print(添加联系人成功!),
        #print(‘共有联系人%d。‘%self.personNum)
    
    #删除指定联系人
    def delPerson(self,name):
        del(self.p[name])
    
    #显示通讯录
    def disp(self,name=‘‘):
        if name == ‘‘:
            for n,t in self.p.items():
                print(%s\t%s%(n,t))
        else:
            print(%s\t%s%(name,self.p[name]))
    
    #保存到文件
    def save(self):
        of = open(addrs.txt,a) 
        for name in self.p:
            of.write(name+\t+self.p[name]+\r)
        of.close()
            
    #从文本文件导入
    def import_from_file(self):
        try:
            file = open(addrs.txt, r)
        except:
            raise ValueError(File open failers.)
            
            
        while True: 
            aline = file.readline()
            if aline:
                aline = aline.rstrip()
                t = aline.rfind(\t)
                self.p[aline[0:t]] = aline[t+1:]
            else:
                break
        file.close()        
        
def menu():
    print(1. 打开通讯录)
    print(2. 新建通讯录)
    print(3. 添加联系人)
    print(4. 查询联系人)
    print(5. 删除联系人)
    print(6. 保存)
    print(7. 退出)
    print(请选择(1-7))
    
#
def main():
    
    while 1:
        menu()
        cmd = input()
        
        if cmd > 7 or cmd < 1:
            print(\nERROR:请输入前菜单对应序号!\n)
        if cmd == 6:
            myadd.save()
        
        if cmd == 1:
            myadd = Address()
            myadd.import_from_file()
        
        if cmd == 2:
            myadd = Address()
            print(已经新建通讯录\n)
            myadd.disp()
        
        if cmd == 3:
            myadd.addPerson()
            myadd.disp()
        
        if cmd == 4:
            name = input(输入你要查询的姓名:)
            if (myadd.search(name) == 1):
                myadd.disp(name)
            else:
                print("未查到!\n")
                
        if cmd == 5:
            name = input(输入你要查询的姓名:)
            if (myadd.search(name) == 1):
                myadd.delPerson(name)
            else:
                print(请输入正确的联系人!\n)
            myadd.disp()
            
        if cmd == 7:
            exit()
        
if __name__ == "__main__":
    main()

 

几点感受(对比c/c++):

1. 不用担心数据类型,无需注明数据类型直接用。

2. 不用担心";"号了。

3. 没有了熟悉的数组char[]、指针等;没有了“||”、“&&”等运算符。

4. 循环结构语法简单,写代码的效率提升了。

5. 显示功能变化了。

 

pathon 学习(一)

标签:

原文地址:http://www.cnblogs.com/py520ziyi/p/5477101.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!