有的小伙伴可能用Python写代码已经非常久了,可能觉得已经是个高手了,那么看看下面这个简单的实现需求,你会写怎样的Python代码呢?通过你写的代码,应该可以大约评估下你到底是菜鸟还是一个老司机了,试试吧,如果是菜鸟,就继续修炼吧。

1、问题说明

为简单起见,我们使用Python语言,写一个简单的子程序,这个子程序仅接收一个输入参数,当输入参数为数字1、2、3、4、5时,打印出其对应的英文单词即one、two、three、four、five等单词,当输入为其它值时,打印出提示信息:“input error!”。

这应该是个非常简单的问题,看看下面两段代码吧。

2、代码段1

先看下第一部分代码,这应该是大部分小伙伴在第一时间想到的代码吧:

def myPrint1(val):

if val == 1:

print('one')

elif val == 2:

print('two')

elif val == 3:

print('three')

elif val == 4:

print('four')

elif val == 5:

print('five')

else:

print('input error!')

myPrint1(5)

3、代码段2

再看下另一段代码:

def myPrint2(val):

d = {

1: 'one',

2: 'two',

3: 'three',

4: 'four',

5: 'five',

}

if val ind:

print(d[val])

else:

print('input error!')

myPrint2(5)

4、菜鸟 or 老司机?

这两段Python代码针对题目要求都能得到正确的结果,但大家有没有发现他们的区别之处?看出菜鸟与老司机的区别了么?

可能大部分人写的都是第1段代码的形式。

很明显,相比于第1段代码,第2段用字典结构代替了多重的if-elif-else结构,将多种选择情况放在了数据表里面,做到了数据与逻辑代码的完全分离,要更简洁明了,并且在扩充性方面要好的多。

如果你能自然而然地在第一时间就写出了第2段代码,那么恭喜你,你基本上已经脱离了新手的范畴而进入了老司机的圈子了。

新手到老司机仅有一步之遥,努力吧。。。。。

【责任编辑:未丽燕 TEL:(010)68476606】

点赞 0

老司机写的java代码_菜鸟 or 老司机?写段代码看看吧相关推荐

  1. 控制台编写JAVA程序教程_写一个java程序的步骤是什么?写java程序技巧

    写Java程序是要按照步骤来的,这样才能写好一个java程序,那么接下来,我们就来给大家讲解一下写一个java程序的步骤是什么? (1)创建Java项目:"FileàNewàProjectà ...

  2. java 多线程写缓存,Java多线程_缓存对齐

    1.什么是缓存对齐 当前的电脑中,数据存储在磁盘上,可以断电保存,但是读取效率较低.不断电的情况下,数据可以在内存中存储,相对硬盘效率差不多是磁盘的一万倍左右.但是运算时,速度最快的是直接缓存在CPU ...

  3. java整人_记录几个有趣的整蛊代码

    java出生,对vb是一纯小白.昨天等接口的过程中实在无聊,就上网搜罗了几个有趣的整蛊代码,可以发给朋友或喜欢的人哦,给每天枯燥的小生活添加一点小趣味. 每段代码只需要新建一个txt文本文件,然后直接 ...

  4. java幻灯片播放代码_简单常用的幻灯片播放实现代码

    幻灯片自动播放图片是当前网站比较流行的一个展示方式.在网上我们能找到各种特效丰富的幻灯片插件和代码.这里项目需要,我自己做了一个简单的,就不详细讲解了,代码很简单.直接看效果图和代码吧. 所有代码 p ...

  5. python有什么有趣的代码_你看过/写过哪些有意思的代码?

    都说程序员木讷无趣,今天就借机让大家领略一下什么叫隐藏在代码里的有趣灵魂. 话不多说,follow me! 1.离职彩蛋--会自杀的文件 离职时电脑里的文件带不走,又不想被别人捡漏?不妨给文件下一个& ...

  6. python3.4勾股定理代码_用于解答算法题目的Python3代码框架

    前言 最近在实习,任务并不是很重,就利用闲暇时间使用Python3在PAT网站上刷题,并致力于使用Python3的特性和函数式编程的理念,其中大部分题目都有着类似的输入输出格式,例如一行读入若干个数字 ...

  7. 微信推文图片间距有缝的代码_使用记录接缝进行旧代码单元测试

    微信推文图片间距有缝的代码 在大多数情况下,使用遗留代码可能很困难. 但是,当涉及到添加新功能,重构或维护您不熟悉的代码时,它可能会变得势不可挡. 如果您已经使用敏捷技术几年了,并且突然间您面对大量的 ...

  8. java300行程序代码_神级程序员JavaScript300行代码搞定汉字转拼音

    一.汉字转拼音的现状 首先应该说,汉字转拼音是个强需求,比如联系人按拼音字母排序/筛选:比如目的地(典型如机票购买) 按拼音首字母分类等等.但是这个需求的解决方案,但好像没听过什么巧妙的实现(特别是浏 ...

  9. 压缩过的js代码怎么还原_码农晒出一段代码:500行代码没有一字注释,这种情况怎么应对?...

    对于程序员经常提到的"代码",从某种程度上来讲就算是机器码,因为这个东西机器很擅长读,不论写的怎么乱,怎么压缩混淆,在机器看来都是一样的,而人就不一样了,哪怕是能力再强的程序员,代 ...

最新文章

  1. Jmail的主要参数列表
  2. HDU2222(AC自动机模版题)
  3. mysql galaxy_优化mysql
  4. pytorch 维度变化的时候应该使用什么方法permute
  5. 关于tomcat8在windows2008下高并发下问题的解决方案
  6. 怎样把java换主题_java – 如何在切换主题时考虑变化?
  7. php定义一个名为Vehicles,[PHP][Yii2.0] 以Yii 2.0风格加载自定义类或命名空间 [配置使用Yii2 autoloader]...
  8. ElasticSearch(一)基础知识
  9. SAP Spartacus 服务器端渲染单步调试步骤之一:应用程序准备工作
  10. m1芯片MacBook安装本地编译版matplotlib库
  11. 交换机抑制广播命令详解
  12. HashSet、LinkedHashSet和TreeSet三者区别与联系
  13. MyEclipse安装插件的几种方法
  14. ASP.NET MVC Model验证
  15. apt-get 与 yum 的区别
  16. u大师制作linux系统,U大师官方下载|U大师U盘启动盘制作工具官方版 v4.7.37.56 最新版 - 系统天堂...
  17. 计算机考研408考试科目及备考指南
  18. QT使用WinApi 报错 LNK2019 无法解析外部符号
  19. 雷达系统概述--距离分辨率
  20. C#简易计算器(加减乘除三角函数运算)

热门文章

  1. 如何将m3u8网络视频转码保存到本地
  2. #考试酷#A10_Assigment Operators Expressions
  3. 算法期中1007. 怪兽训练 (找出有向图中所有的强连通分量的Kosaraju算法)
  4. 90后黑客以1分钱拍迪斯尼门票后转卖 1周赚50万
  5. 响应式 导航_检查响应式导航模式
  6. 蓝桥杯 Log大侠 题解
  7. 【服务器数据恢复】hp服务器raid5磁盘掉线导致raid5不可用的数据恢复案例
  8. 以内部视角来观察10个数据分析的成功案例
  9. 离散数学学习笔记——第六讲——二元关系(4.1 序偶和笛卡儿积)
  10. 构建一个WooCommerce付款扩展