Python中列表生成式和字典生成式练习
(一)列表生成式
练习一:编写名为collatz(number)的函数;实现的功能:参数为偶数时,打印number// 2;参数为奇数时,打印3*number + 1
解析:
number = int(raw_input("please input integer:"))
print number // 2 if number % 2 == 0 else number * 3 +1
练习二:使用for循环,对列表元素的类型进行更改
解析:
s = '51 5000 10000'
k,a,b = [int(i) for i in s.split(" ")] ## 使用空格进行分割
print a,b,c
练习三: 找出1-10之间的所有偶数,并且返回一个列表(包含以这个偶数为半径的圆的面积)
找出1-10之间的所有奇数,并且返回一个列表(转换奇数为字符串)
解析:
import math
li = [math.pi * r*r for r in range(2,11,2)]
li1 = [str(i) for i in range(1,10,2)]
print li,li1
练习四:找出1-100之间的所有质数
解析: 首先定义一个判断质数的函数;返回0代表不是素数,返回1代表时素数
def isPrime(num):
for i in range(2,num):
if number % i == 0:
return 0
else:
return 1
li = [i for i in range(1,101) of isPrime(i)]
print li
(二)字典生成式
练习一: 假设有20个学生,成绩在60-100之间,筛选出成绩在90分以上的学生
解析: 随机生成60-100之间的学生和成绩;然后在生成的字典中选择输出
import random
stuInfo = {'student' + str(i):random.randint(60,100) for i in range(20)}
print {name:score for name,score in stuInfo.items() if score > 90}
练习二: 将字典中的key值和value值调换
解析:
d = {'a':1,'b':2,'c':3}
print {v:k for k,v in d.items()}
print {k:k.upper() for k,v in d.items()}
练习三:大小写合并,Key值最终全部为小写
解析:
d = {'a':1,'b':2,'c':3,'A':5}
print {k.lower():d.get(k.upper(),0)+d.get(k.lower(),0) for k,v in d.items()}
Python中列表生成式和字典生成式练习的更多相关文章
- Python中列表(list)、字典(dict)排序的程序
Python3 中的排序,在 Sorting HOW TO 中已经讲得很清楚了.来个实际的例子,对下面的这个 list 依据创建时间排序: pages = [{'title': '十年学会程序设计', ...
- python中列表排序,字典排序,列表中的字典排序
#-*- encoding=utf-8 -*- # python3代码 import operator 一. 按字典值排序(默认为升序) x = {1:2, 3:4, 4:3, 2:1, 0:0} 1 ...
- python中列表生成式
1.简介 列表生成式即List Comprehensions,是Python中用于创建list的生成式. 2.示例 [表达式 循环体 条件语句] #!/usr/bin/env python # - ...
- day19-1 迭代器,三元表达式,列表推导式,字典生成式,
目录 迭代器 可迭代对象 迭代器对象 总结 三元表达式(三目表达式) 列表推导式 字典生成式 迭代器 可迭代对象 拥有iter方法的对象就是可迭代对象 # 以下都是可迭代的对象 st = '123'. ...
- Python中列表,元组,字典,集合的区别
参考文档https://blog.csdn.net/Yeoman92/article/details/56289287 理解Python中列表,元组,字典,集合的区别 列表,元组,字典,集合的区别是p ...
- python中列表和元组以及字符串的操作
python中列表是非常好用的.不过有一些使用小细节还需要注意一下. tag[32:-4] 从index为32到tag的倒数第4个字符. 如果索引为32的值在倒数第4个字符的右边,那么将输出为空.只要 ...
- python 将列表里的字典元素合并为一个字典
python 将列表里的字典元素合并为一个字典 版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明. 本文链接:https://blog.csdn. ...
- python中列表元素连接方法join用法实例
python中列表元素连接方法join用法实例 这篇文章主要介绍了python中列表元素连接方法join用法,实例分析了Python中join方法的使用技巧,非常具有实用价值,分享给大家供大家参考. ...
- 对Python中列表和数组的赋值,浅拷贝和深拷贝的实例讲解
引用:https://www.jb51.net/article/142775.htm 列表赋值: 1 2 3 4 5 6 7 >>> a = [1, 2, 3] >>&g ...
随机推荐
- Python笔记 #01# Convert Python values into any type
源:DataCamp datacamp 的 DAILY PRACTICE + 日常收集. How much is your $100 worth after 7 years? Guess the t ...
- nginx 代理服务器配置双向证书验证
生成证书链 用脚本生成一个根证书, 一个中间证书(intermediate), 三个客户端证书. 脚本来源于(有修改)https://stackoverflow.com/que... 中间证书的域名为 ...
- MAC VNC SSH roo用户开通
第一步:ssh: user@xxx.xxx.xxx 第二步:开启VNC 开启VNC共享桌面: sudo /System/Library/CoreServices/RemoteManagement/A ...
- Hive的Explain命令
Hive的Explain命令,用于显示SQL查询的执行计划. Hive查询被转化成序列阶段(这是一个有向无环图).这些阶段可能是mapper/reducer阶段,或者是Metastore或文件系统的操 ...
- CSS样式 vertical-align:middle 垂直居中生效情况
vertical-align:middle 是依赖div内子元素最高的行高来实现对某元素居中的 -------不存在浮动时可以直接生效垂直居中 HTML .box1{ display: table- ...
- springMVC入门案例
1.配置文件的web.xml <?xml version="1.0" encoding="UTF-8"?> <web-app xmlns:xs ...
- 2017 ACM/ICPC 南宁区 网络赛 Overlapping Rectangles
2017-09-24 20:11:21 writer:pprp 找到的大神的代码,直接过了 采用了扫描线+线段树的算法,先码了,作为模板也不错啊 题目链接:https://nanti.jisuanke ...
- 使用maven命令进行打包,部署项目到远程仓库
如果要部署项目到远程仓库, 方法一:配置pom.xml: <distributionManagement> <repository> <id>releases< ...
- Gym - 100712G Heavy Coins(二进制枚举)
https://vjudge.net/problem/Gym-100712G 题意:给出n枚不同价值的硬币和一个总价S,现在要选择尽量多的硬币来大于等于S,要求是比如说现在选择的硬币的总和为sum,那 ...
- js中文逗号转英文逗号
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...