python自学群里遇到的小题汇总
2017-06-03 14:16
337 查看
题目一:
请使在3秒内计算出一组的数据,偶数在奇数前(注意不使用for while等循环的方法)格式如下
1,2,3,4,5,6,7,8,9,10
输出结果是
2,1,4,3,6,5,8,7,10,9
解决思路:既然不能用for与while去写循环判断,那么我们就从位置替换的方式处理。只要跟位置相关,首先我们要想到的就是下标及索引。代码如下:
data[0::2]的意思是从data列表的第1位也就是数字1开始::意思到结束位置,2就是第一个数与第二个数相隔两位取,就是取奇数1,3,5,7,9,如下图:
data[1::2]的意思是从data列表的第2位也就是数字2开始::意思到结束位置,2就是第一个数与第二个数相隔两位取,就是取偶数2,4,6,8,10如下图:
tmp这里在这里的作用是临时存放区,这和冒泡排序的方法很类似。通过中间存放奇数,把偶数向前整体移动一位,在把临时存放数据拉回来放到偶数位置及完成。
题目二:
竖着打印输出如下格式(不要用第三方库):1 5 9 13
2 6 10 14
3 7 11 15
4 8 12 16
解决思路:首先你要想到程序是一行一行向下执行,程序一般是有规律可行,其实仔细发现,他们中间的差值其实都是4,只要你发现这个,这题也就不难解。代码如下:
这里一看是不是就恍然大悟,他们之间的差值4可以用range的步数控制,第一行打印出来就是1,5,9,13在仔细看第二行,对比第一行就是数字加1,那么我们利用python默认range是从0起始这个特点,刚好每行相加就可以实现竖着打印,在第二层for循环每次结束,print会帮我们换行做控制及可完成。
会不定期的更新一些题目和解决思路。
也欢迎大家给我私信一起探讨一些方法技巧。
最后感谢大家观看!!!
相关文章推荐
- python安装scikit-learn遇到问题汇总
- 自己编程中遇到的Python错误和解决方法汇总整理
- Python2到Python3经常遇到的问题汇总
- CentOS 6.3+Python 2.7.10安装pycurl遇到的问题汇总
- 自学Python遇到瓶颈,求交流
- python初学遇到的问题汇总
- Python 语言 Oracle 数据库基于 SQLAlchemy + Flask + Ajax 的 Json 前后端分离开发博客系统遇到的坑汇总
- 自己编程中遇到的Python错误和解决方法汇总整理
- Python中遇到的小问题及解决方法汇总
- Python 2.7.10安装pycurl遇到的问题汇总
- Python自学遇到的小问题——交互模式下程序从某句直接运行了
- Python Beautifulsoup 自学过程中遇到的一些问题
- Python 语言使用中遇到的问题汇总
- Python安装numpy,matplotlib,scikit_learn遇到的问题大汇总
- 最近遇到的几个python问题汇总
- python 所遇到的错误汇总
- 薪资管理模块,经常会遇到的40几个问题汇总
- QTP9.2安装问题汇总(因为我全遇到了一遍)
- asp.net c#.net项目中使用总结,遇到的各个问题的汇总
- SVN在windows上使用check-case-insensitive.py遇到的问题(Python2.5,svn1.5.4)