Python内置数据结构与操作符的练习题集锦


Posted in Python onJuly 01, 2016

第一题: give you two var a and b, print the value of a+b, just do it!

根据提议,给出两个变量 a 和 b 并打印出 a+b的值.

a, b = 1, 2
print a + b

当然也可以这么做

a = 1
b = 2
print a + b

第二题: 给你一个list, 如 L = [2, 8, 3, 5], 对L进行升序排序并输出。

L = sorted(L)
print L
#或
# sort() 内置函数会对列表自身排序而 sorted() 会生成一个新的排序列表 
L.sort()
print L

第三题: 给你一个字符串a, 如a = ‘12345', 对a进行逆序输出。

# 通过步进来逆序输出字符串。
a = a[::-1]
print a

第四题: 给你一个字典a = {1:1, 2:2, 3:3}, 输出字典a的key ,以',' 连接,如 ‘1,2,3'。

# dict.keys() 会以list返回字典的key.而join会把list按,字符串',' 连接起来。
print ','.join(a.keys())

第五题: 给你一个字符串a, 输出字符串奇数位置的字符串,如 a = ‘12345', 则输出 ‘135'

# 通过列表解析(也称列表推导式)来判断下表选取奇偶数。
print ''.join([a[x] for x in range(len(a)) if x % 2 == 0])

第六题: 输出所有100以内的素数, 素数之间以空格区分。

# 在加一行print 才能运行通过
L = [x for x in range(2, 101) if not [y for y in range(2, x) if x%y == 0]]
for i in L:
  print L,
print

第七题: 已知矩形长a, 宽b, 输出其面积和周长,以一个空格隔开

print a * b, 2 * (a+b)

第八题: 给你一个list, 如 L = [0, 1, 2, 3, 4] 输出L的中位数

# 中位数是指 对已排序的数集取其中间数,数集为偶数 取中间两数的平均
print sorted(L)[len(L)/2] if len(L) % 2 != 0 else \
    (sorted(L)[Len(L)/2] + sorted(L)[len(L)/2 -1 ])/2.0

第九题: 给你两个正整数a和b, 输出它们的最大公约数。

print max([x for x in range(1, a+1) if x in [y for y in range(1, b+1) if b%y == 0]])

第十题: 给你两个正整数a和b, 输出它们的最小公倍数.

print min([x for x in range(a, a*b+1) if x%a==0 and x%b==0])

附加题: 利用map/reduce 函数实现数的阶乘 如 5!+4!+3!+2!+1!.

print map(lambda x: reduce(lambda y,z: y*z, range(1, x+1)), range(1,6))
# print [1, 2, 6, 24, 120], 所以在用reduce合起来
print reduce(lambda a, b: a+b, map(lambda x: \
    reduce(lambda y, z: y*z, range(1, x+1)),range(1,6)))

附加题: 使用filter函数 实现素数

print filter(lambda x: not [x%i for i in range(2,x) if x%i==0], range(2, 101))
Python 相关文章推荐
python执行等待程序直到第二天零点的方法
Apr 23 Python
深入解析Python编程中JSON模块的使用
Oct 15 Python
Python简单实现自动删除目录下空文件夹的方法
Aug 29 Python
python写一个md5解密器示例
Feb 23 Python
详解如何用django实现redirect的几种方法总结
Nov 22 Python
使用python Telnet远程登录执行程序的方法
Jan 26 Python
Python数据结构与算法(几种排序)小结
Jun 22 Python
python代理工具mitmproxy使用指南
Jul 04 Python
python创建与遍历List二维列表的方法
Aug 16 Python
python实现数学模型(插值、拟合和微分方程)
Nov 13 Python
Django haystack实现全文搜索代码示例
Nov 28 Python
python 实现socket服务端并发的四种方式
Dec 14 Python
Python设置默认编码为utf8的方法
Jul 01 #Python
Python使用email模块对邮件进行编码和解码的实例教程
Jul 01 #Python
详解Python中使用base64模块来处理base64编码的方法
Jul 01 #Python
Python画图学习入门教程
Jul 01 #Python
Python中json格式数据的编码与解码方法详解
Jul 01 #Python
python判断字符串编码的简单实现方法(使用chardet)
Jul 01 #Python
Python字符编码判断方法分析
Jul 01 #Python
You might like
php生成随机密码的几种方法
2011/01/17 PHP
PHP四舍五入精确小数位及取整
2014/01/14 PHP
PHP file_get_contents函数读取远程数据超时的解决方法
2015/05/13 PHP
微信公众平台开发教程②微信端分享功能图文详解
2019/04/10 PHP
小型js框架veryide.librar源代码
2009/03/05 Javascript
Node.js实战 建立简单的Web服务器
2012/03/08 Javascript
JQuery操作Select的Options的Bug(IE8兼容性视图模式)
2013/04/21 Javascript
JavaScript变量的作用域全解析
2015/08/14 Javascript
JavaScript html5 canvas绘制时钟效果(二)
2016/03/27 Javascript
深入理解node exports和module.exports区别
2016/06/01 Javascript
ionic在开发ios系统微信时键盘挡住输入框的解决方法(键盘弹出问题)
2016/09/06 Javascript
bootstrap的常用组件和栅格式布局详解
2017/05/02 Javascript
JavaScript复制内容到剪贴板的两种常用方法
2018/02/27 Javascript
JavaScript继承与多继承实例分析
2018/05/26 Javascript
解决Vue开发中对话框被遮罩层挡住的问题
2018/11/26 Javascript
微信小程序map组件结合高德地图API实现wx.chooseLocation功能示例
2019/01/23 Javascript
koa-router路由参数和前端路由的结合详解
2019/05/19 Javascript
vue+vant实现商品列表批量倒计时功能
2020/01/13 Javascript
[01:19]2014DOTA2国际邀请赛 采访TITAN战队ohaiyo 能赢DK很幸运
2014/07/12 DOTA
[01:03:54]Liquid vs IG 2018国际邀请赛小组赛BO2 第一场 8.17
2018/08/18 DOTA
Python中的defaultdict模块和namedtuple模块的简单入门指南
2015/04/01 Python
如何利用python制作时间戳转换工具详解
2018/09/12 Python
解决在Python编辑器pycharm中程序run正常debug错误的问题
2019/01/17 Python
python中类的输出或类的实例输出为这种形式的原因
2019/08/12 Python
Python手绘可视化工具cutecharts使用实例
2019/12/05 Python
如何使用Cython对python代码进行加密
2020/07/08 Python
详解pyqt5的UI中嵌入matplotlib图形并实时刷新(挖坑和填坑)
2020/08/07 Python
浅谈html5增强的页面元素
2016/06/14 HTML / CSS
怎么样写好简历中的自我评价
2013/10/25 职场文书
表彰会主持词
2014/03/26 职场文书
新学期国旗下演讲稿
2014/05/08 职场文书
2014学校领导四风对照检查材料思想汇报
2014/09/23 职场文书
酒店前台接待岗位职责
2015/04/02 职场文书
如何写好竞聘报告
2019/04/03 职场文书
分享mysql的current_timestamp小坑及解决
2021/11/27 MySQL
解决MySQL报“too many connections“错误
2022/04/19 MySQL