python常用函数和方法 - 备忘
语法语句篇
除法运算(精确运算和截断运算)
在python2中,除法运算通常是截断除法。什么是截断除法:
>>> 3/4
0 # 自动忽略小数项
要是想 得到正确结果 怎么办呢?
method1:
>>> 3. /4
0.75 # 3. 表示 3.0, 表示的是浮点数
method2:
>>> from __future__ import division # 导入这个语句后, “/”此后均执行 精确除法
>>> 3/4
0.75 #精确除非 /
>>> 3//4
0 # 截断除法 //
而在python3版本后, “/” 表示的除法就直接为 准确除法, “//” 表示的是 截断除法。
访问限制修饰符
python 不像 java 由关键字(public, 默认,prtected,private)来控制方法和属性的访问权限。python中属性和方法的访问限制通过下划线来控制。
“单下划线”修饰的变量叫做保护变量(类似于java中的protected),表示只能由该类对象和子类对象才能访问到的变量; “双下划线”修饰的变量叫做私有变量(类似于java中的private),表示仅有该类对象才能访问,子类对象不能访问。
_coef = 0 #保护变量, 类对象和子类对象访问 __coef = 0 #私有变量, 只能类对象访问
实用函数篇
join()函数
用处:连接字符串数组。将字符串、元组、列表中的元素以指定的分隔符连接生成一个新的字符串
# 格式
'sep'.join(seq)
# sep - 分隔符, 可为空
# seq - 要连接的元素序列
"""例子:
''.join(list)
"""
lambda表达式
# 格式:
lambda [arguments]: expression
# 匿名函数
map函数
# 格式:
map(func, seq1[, seq2,...])
#第一个参数接收一个函数名(func),后面的参数接收一个或多个可迭代的序列,返回一个map对象(python3版本) 或 一个集合(python2版本)。
#作用: 将func作用于seq每一个元素
例:
# 仅有一个seq
>>> list(map(lambda a: a**2, [1,2,3,4,5]))
[1, 4, 9, 16, 25]
# 有多个seq
>>> list(map(lambda a, b: a+b, [1,2,3],[4,5,6]))
[5, 7, 9] >>> list(map(lambda a, b: (a-b, a+b), [1,2,3],[4,5,6])) #还可以返回一个元祖
[(-3, 5), (-3, 7), (-3, 9)]
zip函数
# 格式:
zip([iterable, ...])
# 两个或多个可迭代对象
>>> list(zip([1,2,3],[4,5,6],[7,8,9]))
[(1, 4, 7), (2, 5, 8), (3, 6, 9)]
reduce 函数
# 格式
reduce( func, seq[, init] )
# func - 函数,必选参数
# seq - 数据集合,必选参数
# init - 初始值,可选参数
注:func先对集合中的第1,2个数据进行操作,得到的结果再与第三个数据用func()函数运算,最后得到一个结果。有初始值时,func现对初始值和第一个数据进行计算,得到的结果再与第二个数据用func()函数运算,……。
reduce( func, [1, 2,3] ) 相当于 func( func(1, 2), 3)
enumerate函数
#格式:
enumerate(seq, [start=num])
#seq - 一个可迭代的对象; start - 下标起始位点
#作用: 将一个可迭代的对象组合成一个索引序列,同时列出数据和数据的下标,一般用于for循环中。
例:
>>> lis1 = ['one', 'two', 'three', 'four', 'five', 'six']
>>> list(enumerate(lis1))
[(0, 'one'), (1, 'two'), (2, 'three'), (3, 'four'), (4, 'five'), (5, 'six')]
>>> list(enumerate(lis1, start=2))
[(2, 'one'), (3, 'two'), (4, 'three'), (5, 'four'), (6, 'five'), (7, 'six')]
闭包函数
闭包函数必须满足两个要求:
1. 函数内部定义的函数
2. 包含对外部变量而非全局变量的引用
from urllib.request import urlopen def index(url)
def get()
return urlopen(url).read()
return get python = index("http://www.python.org") # 返回的是get函数的地址
print(python()) # 执行get函数《并且将返回的结果打印出
python常用函数和方法 - 备忘的更多相关文章
- Python | Python常用函数、方法示例总结(API)
目录 前言 1. 运算相关 2. Sring与数字 3. 列表相关 4. 集合相关 5. 序列化类型 6. 字典相关 7. 输入输出 8. 文件相关 9. json模块 10. unittest测试模 ...
- Python常用函数、方法、模块记录
常用函数: 1.pow():乘方 2.abs():绝对值 3.round():四舍五入 4.int():转换为整数 5.input():键盘输入(会根据用户的输入来做类型的转换) raw_input( ...
- Python常用函数记录
Python常用函数/方法记录 一. Python的random模块: 导入模块: import random 1. random()方法: 如上如可知该函数返回一个[0,1)(左闭右开)的一个随机的 ...
- Linux常用命令速查备忘
Linux常用命令速查备忘 PS:备忘而已,详细的命令参数说明自己man 一. 启动,关机,登入,登出相关命令 [login] 登录 [logout] 登出 [exit] 登出 [shutdown ...
- jquery常用函数与方法汇总
1.delay(duration,[queueName]) 设置一个延时来推迟执行队列中之后的项目. jQuery1.4新增.用于将队列中的函数延时执行.他既可以推迟动画队列的执行,也可以用于自定义队 ...
- 【终结版】C#常用函数和方法集汇总
C#里面的常用的函数和方法非常重要,然而做题的时候会经常忘记这些封装好的方法,所以我总结一下 C#常用函数和方法集. [1]C#操作字符串的常用使用方法 在 C# 中,您可以使用字符数组来表示字符串, ...
- opencv-学习笔记(1)常用函数和方法。
opencv-学习笔记(1)常用函数和方法. cv2.imread(filename,falg) filename是文件名字 flag是读入的方式 cv2.MREAD_UNCHANGED :不进行转化 ...
- python requests函数封装方法
python requests函数封装方法 上代码 import requests import json """ 封装request请求, 1.post:my_pos ...
- python基础函数、方法
python的函数和方法,通过def 定义: 函数的特性: 减少重复代码 使程序变的可扩展 使程序变得易维护 函数和方法的区别:函数有返回值.方法没有 语法定义: def sayhi():#函数名 p ...
随机推荐
- m3u8文件什么合成便于播放的MP4的方法
先大家要知道M3U8文件不是一个视频文件,里面全是一些路径,说白了就是一个目录而已,所以要看视频,要找到对应存放视频的文件夹.如果不知道怎么找,可以使用文本格式打开M3U8文件,里面会有路径提示. ...
- Zabbix告警脚本-短信
[root@iot-svndata02 bin]# cat zbsms.sh #!/bin/sh #curl http://221.179.180.137:8080/smsaServer/lkSend ...
- 源发行版 1.8 需要目标发行版 1.8以及usage of api documented as @since 1.8+
Maven项目每个Module都有单独的pom.xml,如果不在pom.xml中进行配置,则默认将Module的Language Level设置为5.所以要在pom.xml文件中添加插件进行配置. & ...
- ABP框架 配置权限、本地语言文件、左侧菜单项
1.Framework.Core>Authorization>PermissionNames.cs 这里新增权限项 namespace Framework.Authorization { ...
- BZOJ4386[POI2015]Wycieczki / Luogu3597[POI2015]WYC - 矩乘
Solution 想到边权为$1$的情况直接矩乘就可以得出长度$<=t$ 的路径条数, 然后二分check一下即可 但是拓展到边权为$2$,$3$ 时, 需要新建节点 $i+n$ 和 $i+2n ...
- c++模板笔记
使用vc2015进行C++ 模板的学习实验和笔记 用简单示例学习了解STL template大部头理论书 讲解各种规则和各种规则例外的解决办法 集中精力在20%的规则中的阴暗角落而不是80%实践中要注 ...
- RQNOJ 3 Jam的计数法
一道模拟题,用的vector比用链表要方便很多,毕竟不需要自己写,因为是递增的,所以每一次你都要去检查最后一位加1之后有没有越界,如果没越界你就可以把他当前的字符删掉替换成他下一位的字符就可以了,如果 ...
- Webview窗口设置遮罩层
在Webview窗口中如果存在子Webview的情况下,使用html中的css来做页面遮罩无法覆盖子Webview,为了解决此问题,WebviewStyle对象添加mask属性,用于设置Webview ...
- 软件推荐-有限元开发软件FELAC
首页:http://yuanjisuan.cn/ 有限元语言及其编译器(Finite Element Language And it’s Compiler),以下简称FELAC是中国科学院数学与系统科 ...
- 【python-HTMLTestRunner】生成HTMLTestRunner报告报错ERROR 'ascii' codec can't decode byte 0xe5 in position 0: ordinal not in range(128)
[python-HTMLTestRunner]生成HTMLTestRunner报告报错:ERROR 'ascii' codec can't decode byte 0xe5 in position 0 ...