博客
关于我
Python基础教程2上的一处打印缺陷导致的代码不完整#1
阅读量:439 次
发布时间:2019-03-06

本文共 1685 字,大约阅读时间需要 5 分钟。

#1对代码的完善的

出现打印代码处缺陷截图:

图片上可以看到,定义的request根本没有定义它就有了。这个是未定义的,会报错的,这本书印刷问题,这个就是个坑,我也是才发现。花了点时间脱坑。

 

现在发完整的代码:

#coding:utf-8#字典示例people={     'Jack':{         'phone':'1111',         'addr':'jiangsu'         },     'Lisa':{         'phone':'2222',         'addr':'nanjing'         },     'Lin':{         'phone':'3333',         'addr':'beijing'         }    }labels={      'phone':'phone number',      'addr':'address'    }name=raw_input('Name:')request=raw_input('phone number(p) or address(a)?')if request=='p':    key='phone'if request=='a':    key='addr'if name in people:    print "%s's %s is %s"%(name,labels[key],people[name][key])else:    print '请输入正确的姓名'

输出部分也给大家看:

================== RESTART: D:/python基础教程2/字典示例.py ==================Name:Jackphone number(p) or address(a)?pJack's phone number is 1111>>>

感觉这种写法不是很好,又想了一种写法:

代码如下:

#coding:utf-8#字典示例修改版本people={     'Jack':{         'phone':'1111',         'addr':'jiangsu'         },     'Lisa':{         'phone':'2222',         'addr':'nanjing'         },     'Lin':{         'phone':'3333',         'addr':'beijing'         }    }labels={      'phone':u'电话号码',      'addr':u'家庭地址'    }name=raw_input('请输入你的姓名:')phone=raw_input('查询电话号码请输入p:')address=raw_input('查询家庭地址请输入a:')if phone=='p':    key='phone'else:    print '请输入正确的电话号码'if address=='a':    key='addr'else:    print '请输入正确的家庭地址'if name in people:    print u'%s\'s %s 是 %s 和 %s 在 %s'%(name,labels['phone'],people[name]['phone'],labels[key],people[name][key])else:    print '请输入正确的姓名'

 

输出部分也给大家:

============== RESTART: D:/python基础教程2/字典示例升级版本.py ==============请输入你的姓名:Jack查询电话号码请输入p:p查询家庭地址请输入a:aJack's 电话号码 是 1111 和 家庭地址 在 jiangsu>>>

两种方法都差不多,哈哈,第二种后来测试了下, 好像有点缺陷。暂时就这样#

转载地址:http://ugzfz.baihongyu.com/

你可能感兴趣的文章
MySQL in 太多过慢的 3 种解决方案
查看>>
MySQL InnoDB 三大文件日志,看完秒懂
查看>>
Mysql InnoDB 数据更新导致锁表
查看>>
Mysql Innodb 锁机制
查看>>
MySQL InnoDB中意向锁的作用及原理探
查看>>
MySQL InnoDB事务隔离级别与锁机制深入解析
查看>>
Mysql InnoDB存储引擎 —— 数据页
查看>>
Mysql InnoDB存储引擎中的checkpoint技术
查看>>
Mysql InnoDB存储引擎中缓冲池Buffer Pool、Redo Log、Bin Log、Undo Log、Channge Buffer
查看>>
MySQL InnoDB引擎的锁机制详解
查看>>
Mysql INNODB引擎行锁的3种算法 Record Lock Next-Key Lock Grap Lock
查看>>
mysql InnoDB数据存储引擎 的B+树索引原理
查看>>
mysql innodb通过使用mvcc来实现可重复读
查看>>
mysql insert update 同时执行_MySQL进阶三板斧(三)看清“触发器 (Trigger)”的真实面目...
查看>>
mysql interval显示条件值_MySQL INTERVAL关键字可以使用哪些不同的单位值?
查看>>
Mysql join原理
查看>>
MySQL Join算法与调优白皮书(二)
查看>>
Mysql order by与limit混用陷阱
查看>>
Mysql order by与limit混用陷阱
查看>>
mysql order by多个字段排序
查看>>