review-1
# ### for 循环和序列的运用 # remember = ['从入门到放弃', '从入门到如土', 123, 'happy']
# for each in remember:
# print(each, end= '\n')
#
# happy= {'从入门到放弃', '从入门到如土', 123, 'happy'}
# for each in happy:
# print(each, end= '\n') #while 循环的使用
# '''
# 这是多行注释
# '''
# bingo = '小甲鱼是帅哥'
# answer = input('请输入小甲鱼想听的一户话:')
# while True:
# if bingo == answer:
# break
# answer = input('抱歉输错了,请再猜(答案正确才能退出游戏):')
# print('遗忘的速度是真的快') #符串拼接 and 转义字符 and 原始字符串 # 使用 "\" 可以进行字符转义
# “+”可以字符串拼接,“*”可以进行字符串翻倍操作
# 在字符串前面加“r”就表示是原始字符串。注意:在原始字符串最后不能加“\”
# 利用三重引号字符串可以实现跨越多行的字符串,一般用来实现多行注释。 # count = 1
# print('##登陆程序##')
# a = int(input('请输入答案:'))
# count = 1
# while a != 8:
# if count >= 4:
# print('太难猜了,不玩了')
# break
# a = int(input('答案错误,请输入正确答案:'))
# count += 1 ## type()和isinstance()
format
a = int(input('请输入年份:'))
b = a/4
if b == 0:
print('闰年')
else:
print('不是闰年') # is 和 == 的区别:前者用于判断两个变量引用对象是否是同一个,后者用于判断变量引用的值是否相等。
# type()函数用法:输入一个参数,返回参数的类型;isinstance()函数用法:isinstance(object,classinfo)。
# 利用切片操作、工厂方法、list方法等拷贝叫浅拷贝,只是拷贝了最外围的对象本身,内部的元素都只是拷贝了一个引用而已。
# 利用copy中的deepcopy()方法进行的拷贝是深拷贝,外围和内部都进行了拷贝对象本身,而不是引用。
# 对于数字、字符串和其他原子类型的对象,没有拷贝这一说法,实际上都是以增加引用标签,如果对其重新赋值,也只是创建一个对象,替换掉旧的而已。
# 注意赋值和浅拷贝的区别。 # help(object)查看对象的更多信息;dir(object)显示对象的大部分相关属性名;object.__doc__显示对象相应的文档字符串。
# 列表解析表达式:[有关v表达式 for v in range(num)]:
# >>>[i** 2 for i in range(10)]
#[0, 1, 4, 9, 16, 25, 36, 49, 64, 81]
'''列表函数,
append():L.append(object) -> None -- append object to end、
extend():L.extend(iterable) -> None -- extend list by appending elements from the iterable
insert():L.insert(index, object) -- insert object before index
index(): L.index(value, [start, [stop]])
pop():L.pop([index]) -> item -- remove and return item at index (default last)
count(...):L.count(value) -> integer -- return number of occurrences of value.
copy(...):L.copy() -> list -- a shallow copy of L
remove(...):L.remove(value) -> None -- remove first occurrence of value.
Raises ValueError if the value is not present.
reverse(...):L.reverse() -- reverse *IN PLACE*
''' '''元组
1、元组和列表的使用和操作十分相似,不同带你在于列表可以修改里面的内容,而元组不行。
2、“,”是创建元组的关键,
3、元组的内容是不可修改的,但是可以通过元组连接的方式实现元组更新,也可以是索引访问、运算符运算、切片的操作
4、所有的多对象的、逗号分隔的、没有明确用符号定义的这些集合默认的类型都是元组。
x, y, z = 1, 2, 3
h = x,y,z
type(h)
<class 'tuple'>
元组函数:
tuple() -> empty tuple
tuple(iterable) -> tuple initialized from iterable's items
T.count(value) -> integer -- return number of occurrences of value
T.index(value, [start, [stop]]) -> integer -- return first index of value.
Raises ValueError if the value is not present.
''' '''
序列、格式化、函数
1、序列:列表、元组、字符串统称为序列,都是可迭代对象,存在很多相同之处,也存在细小的差别。
相同之处:1)创建、list(iterable)、tuple(iterable)、str(iterable)
2)拼接、切片、成员操作符、关系操作符等。
3)都可以进行索引
不同之处:1)列表和元组可以使用的BIF:min()、max()、len()等,
2)字符串和元组的内容都不可以修改,而列表的内容可以修改。
3)列表和字符串有pop()、reverse()等方法,而元组不行。 2、函数:形参、实参、关键字参数、默认参数、可变参数(在参数面前加上“*”即可),当一个函数定义中
可变参数还需要其他参数时,需要默认参数配合使用,否则会出错。
3、一个函数最多只能有一个return,如果需要传回多个值,采用列表等形式传回;
如果没有return,函数返回一个None对象。
4、内部函数的整个作用域都在外部函数的作用域之内,即在外部函数外无法调用内部函数;
闭包:在一个内部函数里对外部作用域的变量(但不是全局变量)进行引用,那么内部函数被认为是闭包;
闭包的创建和调用:
def funX(x):
def funY(y):
return x*y
return funY
>>>i = funX(5)
>>>type(5)
<class 'int'>
>>>type(i)
<class 'function'>
>>>i(8)
40
>>>funX(5)(8) ***
40 5、匿名函数:lambda 变量:表达式,用lambda创建匿名函数时,返回一个函数类型的对象。
>>>g =lamdba x,y:x+y
>>>g(3,4)
7 7、filter函数():filter(function or None, iterable) --> filter object Return an iterator yielding those items of iterable for which function(item)
is true. If function is None, return the items that are true.
>>>list(filter(None,[1,0,False,True]))
[1,Ture]
>>>list(filter(lambda x:x%2,range(10))) #功能,返回10以内的奇数 8、map()函数: map(func, *iterables) --> map object
|
| Make an iterator that computes the function using arguments from
| each of the iterables. Stops when the shortest iterable is exhausted.
>>>list(map(lambda x:x*2,range(5)))
[0,2,4,6,8] 9、格式化有采用“%”和format函数两种方式。
''' '''
变量作用域问题:
1、在函数内部可以访问全局变量,也可以使用‘global’关键字对全局变量进行“修改”;
如果不采用global关键字进行修改,那么对全局变量进行修改的本质是创建一个与全局变量
名称相同的局部变量。
2、在局部函数里,只能对外部函数的局部变量(非全局变量)进行引用,而不能进行修改,
除非使用 local 关键字,或者用容器类型的变量规避这个问题。 '''
review-1的更多相关文章
- 我们是怎么做Code Review的
前几天看了<Code Review 程序员的寄望与哀伤>,想到我们团队开展Code Review也有2年了,结果还算比较满意,有些经验应该可以和大家一起分享.探讨.我们为什么要推行Code ...
- Code Review 程序员的寄望与哀伤
一个程序员,他写完了代码,在测试环境通过了测试,然后他把它发布到了线上生产环境,但很快就发现在生产环境上出了问题,有潜在的 bug. 事后分析,是生产环境的一些微妙差异,使得这种 bug 场景在线下测 ...
- AutoMapper:Unmapped members were found. Review the types and members below. Add a custom mapping expression, ignore, add a custom resolver, or modify the source/destination type
异常处理汇总-后端系列 http://www.cnblogs.com/dunitian/p/4523006.html 应用场景:ViewModel==>Mode映射的时候出错 AutoMappe ...
- Git和Code Review流程
Code Review流程1.根据开发任务,建立git分支, 分支名称模式为feature/任务名,比如关于API相关的一项任务,建立分支feature/api.git checkout -b fea ...
- 故障review的一些总结
故障review的一些总结 故障review的目的 归纳出现故障产生的原因 检查故障的产生是否具有普遍性,并尽可能的保证同类问题不在出现, 回顾故障的处理流程,并检查处理过程中所存在的问题.并确定此类 ...
- review简历之感想和建议
最近帮很多朋友review他们的简历,总结起来存在以下问题: 1,简历太多页了.请尽量不超过两页.一般地,每个hr阅读简历的时间大概在20s甚至更少,写那么多页不仅毫无必要,而且有害. 而且我怀疑一般 ...
- Plant Design Review Based on AnyCAD
Plant Design Review Based on AnyCAD eryar@163.com Abstract. AVEVA Review is used to 3D model visuali ...
- git review & devops过程
自己搭建的devops环境是gitlab/gerrit/jenkins 1. 首先自己checkout一个自己的代码分支,一般不要在master上做直接修改 2. 修改后git add file, ...
- 自动提交Git branch代码评审到Review Board系统
背景 敏捷软件开发中,越小的反馈环,意味着软件质量越容易得到保证. 作为组件团队,我们的开发任务中,往往存在一些特性涉及到几十个功能点,开发周期持续数周或数月的情况.如何在开发过程中保证软件质量,是个 ...
- 如何搭建开源code review gerrit服务器
搭建环境:Ubuntu 14.04 一.环境准备 1.Java环境 gerrit依赖,用于安装gerrit环境. 下载:jdk-7u79-linux-x64.tar.gz http://www.ora ...
随机推荐
- Django扩展内置User类
内置User类 使用内置User可以方便实现登录验证,利用Admin管理界面还可以方便添加.删除.修改用户. 一个内置的User类定义了以下字段: username: 用户名 password: 密码 ...
- CentOS7 编译安装python3.6.8(升级python)
1.安装依赖包和需要用到的工具 yum -y install wget openssl openssl-devel 这里如果不升级openssl,安装后pip安装模块可能会出错.点我查看pip安装模块 ...
- IP电话的配置
内容描述:IP电话配置 问题描述: IP电话站点为8203,IP地址为10.11.6.3,电话状态为空心(不正常). 处理过程: 1.在浏览器中打开输入原先已经配置正常的IP话机的IP地址访问其配置, ...
- linux c++下遍历文件
https://blog.csdn.net/u013617144/article/details/44807333
- Floyd Cycle Detection
Floyd判圈算法能在O(n)时间复杂度内判断迭代函数或链表中是否有环,并求出环的长度与起点 判断环存在 通常采用快慢指针的方式来判断环是否存在 从绿色起点G开始,快指针每次走2步,慢指针每次走1步, ...
- GUI学习之十五——QAbstractSpinBox学习总结
QAbstractSpinBox是一个抽象类,是将所有步长调节器的通用的功能抽象出了一个父类.虽然QAbstractSpinBox是一个抽象类,但是可以直接实例化使用.QAbstractSpinBox ...
- 给虚拟机CentOS7扩容(lvm方式)
虚拟机中centos7原有容量不够了,需要进行扩容. 可以使用图形工具gparted来进行操作,安装和使用可自行百度.但需要注意的是,这篇文章提到:一定要用parted中的mkfs命令格式化分区,用系 ...
- 日记(OI 无关,文化课无关)
2019.11.13 今天在研究 wss 的代码为什么比我快那么多. 看见他定义了一个结构体叫 thxorz,一定是因为 orz 了 thx 得到了信仰加成了. 然后刚说完这句话就看见 thx 走了进 ...
- 小程序内置组件swiper,circular(衔接)使用小技巧
swiper,关于滑块的一些效果无缝,断点,视差等等...我想这里就不用做太多的赘述,这里给大家分享一下实战项目中使用circular(衔接)的一点小特性.小技巧,当然你也可以理解为遇到了一个小坑,因 ...
- 题解 P1587 【[NOI2016]循环之美】
知识点:莫比乌斯反演 积性函数 杜教筛 废话前言: 我是古明地恋,写这篇题解的人已经被我 请各位读者自行无视搞事的恋恋带有删除线的内容,谢谢茄子. 这道题目本身并不难,但是公式推导/代码过程中具有迷惑 ...