2017-08-06笔记

可以使用 ** 操作符分拆关键字参数为字典:>>> def parrot(voltage, state=‘a stiff‘, action=‘voom‘):
...     print("-- This parrot wouldn‘t", action, end=‘ ‘)
...     print("if you put", voltage, "volts through it.", end=‘ ‘)
...     print("E‘s", state, "!")
...
>>> d = {"voltage": "four million", "state": "bleedin‘ demised", "action": "VOOM"}
>>> parrot(**d)

内建函数 range() 需要要独立的 startstop 参数。你可以在调用函数时加一个 * 操作符来自动把参数列表拆开:
>>> args = [3, 6]
>>> list(range(*args)) 

在迭代过程中修改迭代序列不安全(只有在使用链表这样的可变序列时才会有这样的情况)。如果你想要修改你迭代的序列(例如,复制选择项),你可以迭代它的复本。使用切割标识就可以很方便的做到这一点:
>>> for w in words[:]:  # Loop over a slice copy of the entire list.
...     if len(w) > 6:
...         words.insert(0, w)

list.copy()

返回列表的一个浅拷贝。等同于 a[:]


注解是以字典形式存储在函数的 __annotations__ 属性中,对函数的其它部分没有任何影响。参数注解(Parameter annotations)是定义在参数名称的冒号后面,紧随着一个用来表示注解的值得表达式。返回注释(Return annotations)是定义在一个 -> 后面,紧随着一个表达式,在冒号与 ->之间。
>>> def f(ham: 42, eggs: int = ‘spam‘) -> "Nothing to see here":
...     print("Annotations:", f.__annotations__)
...     print("Arguments:", ham, eggs)
...
>>> f(‘wonderful‘)
Annotations: {‘eggs‘: <class ‘int‘>, ‘return‘: ‘Nothing to see here‘, ‘ham‘: 42}
Arguments: wonderful spam
 
类似于嵌套函数定义,lambda 形式可以从外部作用域引用变量:
>>> def make_incrementor(n):
...     return lambda x: x + n
...
>>> f = make_incrementor(42)
>>> f(0)
42
>>> f(1)
43

上面的示例使用 lambda 表达式返回一个函数。另一个用途是将一个小函数作为参数传递:

>>> pairs = [(1, ‘one‘), (2, ‘two‘), (3, ‘three‘), (4, ‘four‘)]
>>> pairs.sort(key=lambda pair: pair[1])
>>> pairs
[(4, ‘four‘), (1, ‘one‘), (3, ‘three‘), (2, ‘two‘)]
 
 
时间: 2025-01-18 16:25:53

2017-08-06笔记的相关文章

2017.08.06【NOIP提高组】模拟赛B组

Summary 今天的比赛60+100+100=260分,没有想到第一题正解是搜索,我与AC差一段距离,这段距离,叫倒着搜.总的来说不是很难. Problem T1 天平 题目大意 给你N个排序好的砝码的质量,从第三个砝码开始,它的重量最少是前两个砝码的质量之和.天平容不得超过C质量的质量.问最大的质量可以是多少. 想法 一般Usaco的题目都不会水到哪里去,但是今天的... 有两种方法. (1) 爆搜+剪枝 爆搜应该都会,参数是枚举到第K个,当前砝码是重S 优化一:如果当前的砝码质量加上没有抉

2017年06月30号课堂笔记

2017年06月30号 星期五 多云 空气质量:中度污染 内容:MySQL第三节课 一.delete 和 truncate的区别 01.delete begin (开启事务)select * from grade;(查询年级表中所有的数据) delete from grade; (删除年级表中所有的数据)select * from grade;(查询年级表中所有的数据,没有数据) rollback; (事务回滚)select * from grade;(查询年级表中所有的数据,删除的数据恢复)

【读书笔记】技术每天一点点--2017.08月

本文地址:http://www.cnblogs.com/aiweixiao/p/7451352.html 本文提纲: 概述 每天进展 1.[遗留问题] 1.1)[问题] 问题列表 1.2)[todo] todo 2.[每天进展] 2.1)[2017.08.30] [运维]<京东应用运维智能化演进实战>(文件列表有): --部署,变更与发布维护 --JDOS系统,对代码镜像在开发,测试,预发布,线上环境之间流转 --交付:向开发交付充足的资源,向业务方交付稳定的系统(响尾蛇系统),向运维交互可维

2017年06月07号课堂笔记

2017年06月07号 晴 空气质量:中度污染->良 内容:jQuery第二节:基本选择器,层次选择器,属性选择器, 基本过滤选择器,可见性过滤选择器 备注:代课老师:李老师 一.基本选择器 1)老师代码: <%@ page language="java" import="java.util.*" pageEncoding="utf-8"%> <% String path = request.getContextPath(

2014年至今的博文目录(更新至2017年06月12日)

拓扑学中凝聚点的几个等价定义(2017-06-12 07:51) 江苏省2017年高等数学竞赛本二试题(含解答)(2017-06-10 20:59) 裴礼文数学分析中的典型问题与方法第4章一元函数积分学练习(2017-06-10 11:04) 2017年厦门大学第十四届景润杯数学竞赛试卷(数学类)评分标准(2017-06-05 15:31) 2017年华东师范大学数学竞赛(数学类)试题(2017-06-05 15:28) 裴礼文数学分析中的典型问题与方法第3章一元微分学练习(2017-05-30

Java转换Json日期/Date(1487053489965+0800)/格式以及js时间格式 Tue Feb 14 2017 14:06:32 GMT+0800

/Date(1487053489965+0800)/用Java怎么转换成yyyy-MM-dd的格式 Tue Feb 14 2017 14:06:32 GMT+0800用Java怎么转换成yyyy-MM-dd的格式 跟普通的日期不太一样 public static void main(String[] args) { String str="/Date(1487053489965+0800)/"; str=str.replace("/Date(","&quo

2017/08/20 工作日志

最近加班和琐事好多,差点断了习惯,今日解决了一大堆,不过还有不少,但感觉已经好很多了,日常以后就不写在这边了,还是以贴技术部分的参考为主. 2017/08/09 从这一天开始被卡在ZTree的地区树上好几天,几乎没有进展,思维非常混乱.记录的东西有这几点: 1.类+问号:说明这是可以为null的类型. 2.使用项目引用会自动生成抽取,使用方法是"右键项目-属性页",用w3wp这个进程调试也与这个有关. 2017/08/11 一直没能解决地区树的问题,转到了改其他后台,做了组织机构的添加

2014/08/06 – Backbonejs

[来自:Backbone.js 开发秘笈 第3章] Collection API (function ($) { //define ----------------------------- var ModelD = Backbone.Model.extend({ defaults: { ID: 0, Name: '' }, idAttribute: 'ID' }); //定义集合对象 /* 在其内部,模型被存储在一个名为 models 的数组当中 */ var CollectionD = Ba

2017/03/08学习笔记

结构体深copy和浅copy问题 编译器的=号操作,只会把结构体中指针变量的值copy,但不会重新开辟内存空间.//出现浅copy出现的场景是,结构体里面有指针成员的时候.如果需要执行深copy,需要手动显示分配内存,然后手动copy指针成员所执行的数据. 结构体偏移量定义下来,则结构体中的成员 内存布局就定义下来了,可以通过成员地址去求结构体的内存地址 文件操作 文件的分类按文件的逻辑结构分为记录文件:由具有一定结构的记录组成(定长和不定长)流式文件:由一个个字符(字节)数据顺序组成.按存储介

2017/03/06学习笔记

char *p="abcdef";//在栈上开辟4字节空间存放指针p,在常量区开辟7空间存放字符串常量"abcdef",并将字符串常量的地址赋值给指针p.所以p指向的内存空间不能被修改 #include <stdio.h> //字符串反转(普通) void inverse(char *p){ int len = strlen(p); int i=0,j=len-1; while(i<j){ char tmp = p[i]; p[i] = p[j];