Python语法基础(长期)
os.mkdir和os.mkdirs的区别?
前者如果“中间路径”不存在,会抛出异常,后者则会自动创建中间路径。
map(function, iterable)
对于可迭代函数```iterable```中的每一个函数,执行```function```,并将结果作为list返回。可以说,```map(f, iterable)``` **基本等价于** ``` [f(x) for x in iterable]```
>>> def add100(x):
... return x+100
...
>>> hh = [11,22,33]
>>> map(add100,hh)
[111, 122, 133]
reduce(function, iterable, initializer=None)
从可迭代对象iterable头部的两个元素开始,循环调用function使结果减少到一个元素,并用这个新元素继续和后一个元素reduce,直至最后一个元素。如果initializer有值,则它会被放到iterable序列的头部。
例如:
reduce(lambda x, y: x+y, [1, 2, 3, 4, 5], 10)
//计算(((((10+1)+2)+3)+4)+5)
filter(function, iterable)
对iterable中的每一个元素,执行function,如果返回值是true则将其添加到一个list中,最后返回该list. ```filter(function, iterable)```**等价于**```[item for item in iterable if function(item)]```.
使用dict统计元素个数更简洁的写法
以前一直用这样:
mlist = [1, 2, 2, 4, 1, 3, 7, 2]
mdict = {}
for i in mlist:
if i not in mdict:
mdict[i] = 0
mdict[i] += 1
昨天发现一种更简洁的写法:
mlist = [1, 2, 2, 4, 1, 3, 7, 2]
mdict = {}
for i in mlist:
mdict.get(i, 0) + 1 # get获取key为i的value,如果没有则默认为0
给dict排序
有时我们不想使用collections(一种有序的dict数据结构),比如代码已经写好了懒得改,怎么办呢?
方法一:使用lambda
dic = {'a':31, 'bc':5, 'c':3, 'asd':4, 'aa':74, 'd':0}
mdict= sorted(dic.iteritems(), key=lambda d:d[1], reverse = True)
方法二:使用operator
dic = sorted(dic .items(), key = operator.itemgetter(1), reverse = True)
Python语法基础(长期)的更多相关文章
- (数据分析)第02章 Python语法基础,IPython和Jupyter Notebooks.md
第2章 Python语法基础,IPython和Jupyter Notebooks 当我在2011年和2012年写作本书的第一版时,可用的学习Python数据分析的资源很少.这部分上是一个鸡和蛋的问题: ...
- python语法基础笔记
本篇笔记基于博主自己的的学习,理解,总结所写.很多东西可能存在误解,不能保证百分之百的正确. 1. 数据表达1.1 常量和变量1.2 数据类型1.2.1 基本数据元素1.2.1.1 数字1.2.1.2 ...
- Python | Python语法基础
目录 前言 1. 变量与简单数据结构 2. 列表相关 3. 集合 4. If语句 5. 字典 6. 用户输入和while循环 7. 函数 8. 类与对象 9. 文件 10. 异常 11. 测试 最后 ...
- python 笔记2:python语法基础
python语法学习笔记: 1 输入输出 input(),print(). name = input('input your name : ')print('hello ,'+name)print(& ...
- python语法基础-面向对象-基础-长期维护
############### 类的基本操作 ############## """ 类的基本认识: 1,类就是一个模子 2,dict,list都是类,具体的一 ...
- python语法基础-异常操作-长期维护
############### python-异常的操作 ############### # 异常:python解释器遇到一个错误,会停止程序的执行,并且提示错误信息,这就是异常, # 抛出异 ...
- python语法基础-文件操作-长期维护
############### python-简单的文件操作 ############### # python中文件的操作 # 文件操作的基本套路 # 1,打开文件,默认是是只读方式打开文件 ...
- python语法基础-面向对象-进阶-长期维护
############### @property定义属性 ############## # 所以对于定义属性你有好几种方式了和种类了,# 静态属性,动态属性, # property # ...
- python语法基础-常用模块-长期维护
############### 常用模块 ################ # 常用模块: # 1,collections模块 # 2,时间模块,time模块,datatime模块 # ...
- python语法基础-函数-内置函数和匿名函数-长期维护
################## 内置函数 ####################### """ 一共是 68个内置函数: 反射相关的内置函 ...
随机推荐
- JSP和JavaBean
JSP JSP全称是Java Server Pages.JSP实际上就是Servlet. JSP原理:JSP会被Tomcat翻译成一个Servlet JSP语法 1)JSP的Java脚本表达式 作用: ...
- Codeforces Round #193 (Div. 2)
题目地址: http://codeforces.com/contest/332 第一题:题目又臭又长,读了好长时间才读懂. n个人,你是0号,从0开始到n-1循环做动作,只要你前面三个人动作一样,你就 ...
- phper談談最近重構代碼的感受(3)
这篇文章本来该和同一系列的文章一起写的,因为最近换工作的缘故滞后了.重构是非常细碎的叠加,有很多值得注意的地方. 1.消灭过多的临时变量. 有时候过多的无意义的临时变量,真心让人抓狂,特别是过了比较长 ...
- kuryr环境搭建
前言 kuryr是docker和neutron结合的一个项目.docker自1.9之后,支持libnetwork的remote的driver,使得可以通过json rpc调用,为docker提供网络. ...
- [ios2]iphone编程中使用封装的NSLog来打印调试信息 【转】
使用NSLog的一个风险是:它的运行会占用时间和设备资源. 简单而粗暴的解决方案是:在release前,将所有的NSLog注释掉.简单有效,但副作用是:下次你要调试时,又得将NSLog一个个取消注释. ...
- [UWP小白日记-9]页面跳转过度动画(二)
又打算动手写了 [UWP小白日记-6]页面跳转过度动画 上次写的,这次随着学习的进度使用新的玩法. 最近在搞GIT的学习,结果把好好的项目玩坏,都不知道当时是怎么想的拿在写的APP来玩GIT,害我重写 ...
- 怎么删除hao.qquu8.com绑定
运行 输入 regedit 编辑 - 查找 hao.qquu8.com 然后修改成 你想绑定的 主页 就好
- Jmeter之基本介绍
初学Jmeter,以下是我常用的功能,总结一下. 1.Thread Group线程组 线程组,即:虚拟用户组
- RelativeLayout各个属性
android:layout_above="@id/xxx" --将控件置于给定ID控件之上 android:layout_below="@id/xxx" ...
- UIColor,CGColor,CIColor三者间的区别和联系
一.UIColor UIColor是UIKit中存储颜色信息的一个重要的类,一个UIColor对象包含了颜色和透明度的值,它的颜色空间已经针对IOS进行了优化.UIColor包含了一些类方法用于创建一 ...