Python内置方法/函数
abs()
返回数字的绝对值。
abs(x)
all()
用于判断给定的可迭代参数 iterable 中的所有元素是否都为 TRUE,如果是返回 True,否则返回 False。
元素除了是 0、空、None、False 外都算 True。
all(iterable) #iterable -- 元组或列表
>>> all([1,2,0])
False
>>> all([1,2,1])
True
any()
用于判断给定的可迭代参数 iterable 是否全部为 False,则返回 False,如果有一个为 True,则返回 True。
元素除了是 0、空、FALSE 外都算 TRUE。
>>> any([1,2,0])
True
>>> any([0,0])
False
ascii()
中文转ASC码。
>>> ascii([1,2,"测试"])
"[1, 2, '\\u6d4b\\u8bd5']"
bin()
十进制转二进制。
bin(x)
bool()
判断真假。
>>> bool(1)
True
>>> bool(0)
False
bytes()
返回一个新的“bytes”对象, 是一个不可变序列。
class bytes([source[, encoding[, errors]]])
>>> bytes('abcd',encoding="utf-8")
b'abcd'
bytearray()
返回一个新的 bytes 数组。 bytearray 类是一个可变序列。改二进制字符。
bytearray([source[, encoding[, errors]]]) >>> a = bytearray('abcd',encoding="utf-8")
>>> a[0]
97
>>> a[0] = 99
>>> a
bytearray(b'cbcd')
callable()
如果参数 object 是可调用的就返回 True,否则返回 False。
>>> callable(int)
True
chr()
chr() 用一个范围在 range(256)内的(就是0~255)整数作参数,返回一个对应的字符。
>>> chr(100)
'd'
ord()
ord() 函数是 chr() 函数(对于8位的ASCII字符串)或 unichr() 函数(对于Unicode对象)的配对函数,它以一个字符(长度为1的字符串)作为参数,返回对应的 ASCII 数值,或者 Unicode 数值。
>>> ord('a')
97
@classmethod
把一个方法封装成类方法。
class C:
@classmethod
def f(cls, arg1, arg2, ...): ...
compile()
compile() 函数将一个字符串编译为字节代码,用于底层编译的。
语法:
compile(source, filename, mode, flags=0, dont_inherit=False, optimize=-1) 将 source 编译成代码或 AST 对象。代码对象可以被 exec() 或 eval() 执行。source 可以是常规的字符串、字节字符串,或者 AST 对象。
filename 实参需要是代码读取的文件名
mode 实参指定了编译代码必须用的模式。如果 source 是语句序列,可以是 'exec';如果是单一表达式,可以是 'eval';如果是单个交互式语句,可以是 'single'。
>>> code = "for i in range(10):print(i)"
>>> c = compile(code,'','exec')
>>> c
<code object <module> at 0x000001A23F969300, file "", line 1>
>>> exec(c)
0
1
2
3
4
5
6
7
8
9
也可以是表达式。
>>> code = "1+2+3/2"
>>> c = compile(code,'','eval')
>>> eval(c)
4.5
exec()
exec(object[, globals[, locals]])
这个函数支持动态执行 Python 代码。object 必须是字符串或者代码对象。如果是字符串,那么该字符串将被解析为一系列 Python 语句并执行(除非发生语法错误)。 如果是代码对象,它将被直接执行。在任何情况下,被执行的代码都需要和文件输入一样是有效的
complex()
返回值为 real + imag*1j 的复数,或将字符串或数字转换为复数。
>>> complex(1,2)
(1+2j)
delattr()
delattr(object, name)
实参是一个对象和一个字符串。该字符串必须是对象的某个属性。如果对象允许,该函数将删除指定的属性。
例如 delattr(x, 'foobar') 等价于 del x.foobar 。
dir()
dir() 函数不带参数时,返回当前范围内的变量、方法和定义的类型列表;带参数时,返回参数的属性、方法列表。
>>> dir(code)
['__add__', '__class__', '__contains__', '__delattr__', '__dir__', '__doc__', '__eq__', '__format__', '__ge__', '__getattribute__', '__getitem__', '__getnewargs__', '__gt__', '__hash__', '__init__', '__init_subclass__', '__iter__', '__le__', '__len__', '__lt__', '__mod__', '__mul__', '__ne__', '__new__', '__reduce__', '__reduce_ex__', '__repr__', '__rmod__', '__rmul__', '__setattr__', '__sizeof__', '__str__', '__subclasshook__', 'capitalize', 'casefold', 'center', 'count', 'encode', 'endswith', 'expandtabs', 'find', 'format', 'format_map', 'index', 'isalnum', 'isalpha', 'isdecimal', 'isdigit', 'isidentifier', 'islower', 'isnumeric', 'isprintable', 'isspace', 'istitle', 'isupper', 'join', 'ljust', 'lower', 'lstrip', 'maketrans', 'partition', 'replace', 'rfind', 'rindex', 'rjust', 'rpartition', 'rsplit', 'rstrip', 'split', 'splitlines', 'startswith', 'strip', 'swapcase', 'title', 'translate', 'upper', 'zfill']
divmod()
它将两个(非复数)数字作为实参,并在执行整数除法时返回一对商和余数。
>>> divmod(10,2)
(5, 0)
enumerate
enumerate() 函数用于将一个可遍历的数据对象(如列表、元组或字符串)组合为一个索引序列,同时列出数据和数据下标,一般用在 for 循环当中。
>>> a=['a','b','b','d','e']
>>> for i,e in enumerate(a):
... print(i,e)
...
0 a
1 b
2 b
3 d
4 e
eval()
eval() 函数用来执行一个字符串表达式,并返回表达式的值。
可以把字符串变成字典。
>>> a="{'a':'b'}"
>>> type(a)
<class 'str'>
>>> b = eval(a)
>>> type(b)
<class 'dict'>
filter()
filter(function, iterable)
用 iterable 中函数 function 返回真的那些元素,构建一个新的迭代器。iterable 可以是一个序列,一个支持迭代的容器,或一个迭代器。
>>> f = filter(lambda n:n>5,range(10))
>>> f
<filter object at 0x000001A23FA31BE0>
>>> for i in f:
... print(i)
...
6
7
8
9
map()
返回一个将 function 应用于 iterable 中每一项并输出其结果的迭代器。
map(function, iterable)
>>> m = map(lambda n:n*n,range(10))
>>> for i in m:
... print(i)
...
0
1
4
9
16
25
36
49
64
81
float()
返回从数字或字符串 x 生成的浮点数。
>>> float(2)
2.0
format()
将 value 转换为 format_spec 控制的“格式化”表示。
>>> "{}".format("hello")
'hello'
frozenset()
frozenset([iterable])
frozenset() 返回一个冻结的集合,冻结后集合不能再添加或删除任何元素。
>>> l = [1,2,3,4]
>>> dir(l)
['__add__', '__class__', '__contains__', '__delattr__', '__delitem__', '__dir__', '__doc__', '__eq__', '__format__', '__ge__', '__getattribute__', '__getitem__', '__gt__', '__hash__', '__iadd__', '__imul__', '__init__', '__init_subclass__', '__iter__', '__le__', '__len__', '__lt__', '__mul__', '__ne__', '__new__', '__reduce__', '__reduce_ex__', '__repr__', '__reversed__', '__rmul__', '__setattr__', '__setitem__', '__sizeof__', '__str__', '__subclasshook__', 'append', 'clear', 'copy', 'count', 'extend', 'index', 'insert', 'pop', 'remove', 'reverse', 'sort']
>>> frozenset(l)
frozenset({1, 2, 3, 4})
>>> x = frozenset(l)
>>> dir(x)
['__and__', '__class__', '__contains__', '__delattr__', '__dir__', '__doc__', '__eq__', '__format__', '__ge__', '__getattribute__', '__gt__', '__hash__', '__init__', '__init_subclass__', '__iter__', '__le__', '__len__', '__lt__', '__ne__', '__new__', '__or__', '__rand__', '__reduce__', '__reduce_ex__', '__repr__', '__ror__', '__rsub__', '__rxor__', '__setattr__', '__sizeof__', '__str__', '__sub__', '__subclasshook__', '__xor__', 'copy', 'difference', 'intersection', 'isdisjoint', 'issubset', 'issuperset', 'symmetric_difference', 'union']
getattr()
getattr(object, name[, default])
返回对象命名属性的值。name 必须是字符串。如果该字符串是对象的属性之一,则返回该属性的值。例如, getattr(x, 'foobar') 等同于 x.foobar。
globals()
以键值对的方式返回当前程序的所有变量。
>>> print(globals())
{'__name__': '__main__', '__doc__': None, '__package__': None, '__loader__': <class '_frozen_importlib.BuiltinImporter'>, '__spec__': None, '__annotations__': {}, '__builtins__': <module 'builtins' (built-in)>, 'a': "{'a':'b'}", 'code': '1+2+3/2', 'c': <code object <module> at 0x000001A23F9699C0, file "", line 1>, 'i': 81, 'e': 'e', 'b': {'a': 'b'}, 'f': <filter object at 0x000001A23FA31BE0>, 'm': <map object at 0x000001A23FA31C18>, 'l': [1, 2, 3, 4], 'x': frozenset({1, 2, 3, 4})}
hash()
返回该对象的哈希值(如果它有的话)。哈希值是整数。
>>> hash('abcs')
-5430407018906191666
help()
查看函数或模块用途的详细说明。
>>> help(chr)
Help on built-in function chr in module builtins: chr(i, /)
Return a Unicode string of one character with ordinal i; 0 <= i <= 0x10ffff.
hex()
将一个指定数字转换为 16 进制数。
>>> hex(15)
'0xf'
id()
获取对象的内存地址。
>>> a="hello"
>>> id(a)
2047968913928
int()
将一个字符串或数字转换为整型。
>>> int("111")
111
input()
接受一个标准输入数据,返回为 string 类型。
>>> str = input("Input value")
Input value hello
>>> str
' hello'
isinstance()
判断一个对象是否是一个已知的类型。
>>>a = 2
>>> isinstance (a,int)
True
>>> isinstance (a,str)
False
issubclass()
判断参数 class 是否是类型参数 classinfo 的子类。
class A:
pass
class B(A):
pass print(issubclass(B,A)) # 返回 True
iter()
用来生成迭代器。
iter(object[, sentinel])
- object -- 支持迭代的集合对象。
- sentinel -- 如果传递了第二个参数,则参数 object 必须是一个可调用的对象(如,函数),此时,iter 创建了一个迭代器对象,每次调用这个迭代器对象的__next__()方法时,都会调用 object。
>>>lst = [1, 2, 3]
>>> for i in iter(lst):
... print(i)
...
1
2
3
len()
返回对象(字符、列表、元组等)长度或项目个数。
>>> len('avc')
3
locals()
以字典类型返回当前位置的全部局部变量。
>>> def a():
... x='aaa'
... print(locals())
...
>>> a()
{'x': 'aaa'}
list()
用于将元组或字符串转换为列表。
>>> a = '[1,2,3,4]'
>>> x = list(a)
>>> x
['[', '1', ',', '2', ',', '3', ',', '4', ']']
max()
返回给定参数的最大值,参数可以为序列。
>>> max(100,1000,10)
1000
min()
返回给定参数的最小值,参数可以为序列。
>>> min('a','b','c')
'a'
memoryview()
返回给定参数的内存查看对象(Momory view)。
>>>v = memoryview(bytearray("abcefg", 'utf-8'))
>>> print(v[1])
98
>>> print(v[-1])
103
>>> print(v[1:4])
<memory at 0x10f543a08>
>>> print(v[1:4].tobytes())
b'bce'
>>>
next()
返回迭代器的下一个项目,相当于__next__()。
it = iter([1, 2, 3, 4, 5])
while True:
try:
x = next(it)
print(x)
except StopIteration:
break
object()
面向对象中的对象。
oct()
将一个整数转换成8进制字符串
>>> oct(1)
'0o1'
open()
用于打开一个文件,并返回文件对象。
open(file, mode='r', buffering=-1, encoding=None, errors=None, newline=None, closefd=True, opener=None)
- file: 必需,文件路径(相对或者绝对路径)。
- mode: 可选,文件打开模式
- buffering: 设置缓冲
- encoding: 一般使用utf8
- errors: 报错级别
- newline: 区分换行符
- closefd: 传入的file参数类型
- opener:
pow()
返回x的y次方的值。
>>> import math
>>> math.pow(2,3)
8.0
print()
用于打印输出。
print(*objects, sep=' ', end='\n', file=sys.stdout, flush=False)
- objects -- 复数,表示可以一次输出多个对象。输出多个对象时,需要用 , 分隔。
- sep -- 用来间隔多个对象,默认值是一个空格。
- end -- 用来设定以什么结尾。默认值是换行符 \n,我们可以换成其他字符串。
- file -- 要写入的文件对象。
- flush -- 输出是否被缓存通常决定于 file,但如果 flush 关键字参数为 True,流会被强制刷新。
property()
新式类中返回属性值。
class property([fget[, fset[, fdel[, doc]]]])
参数
fget -- 获取属性值的函数
fset -- 设置属性值的函数
fdel -- 删除属性值函数
doc -- 属性描述信息
class C(object):
def __init__(self):
self._x = None def getx(self):
return self._x def setx(self, value):
self._x = value def delx(self):
del self._x x = property(getx, setx, delx, "I'm the 'x' property.")
range()
返回的是一个可迭代对象(类型是对象)。
>>>range(5)
range(0, 5)
repr()
将对象转化为供解释器读取的形式。
>>> a
'[1,2,3,4]'
>>> repr(a)
"'[1,2,3,4]'"
reversed()
返回一个反转的迭代器。
>>> a="admin"
>>> reversed(a)
<reversed object at 0x000001DCD474A6A0>
>>> print(a)
admin
round()
返回浮点数 x 的四舍五入值。
round( x [, n] )
>>> round(1.335,2)
1.33
set()
创建一个无序不重复元素集。
>>> x=set('test')
>>> x
{'t', 'e', 's'}
slice()
实现切片对象,主要用在切片操作函数里的参数传递。
setattr(object, name, value)
- object -- 对象。
- name -- 字符串,对象属性。
- value -- 属性值。
>>> a = range(0,20)
>>> a[slice(5,10)]
range(5, 10)
setattr()
对应函数 getattr(),用于设置属性值,该属性不一定是存在的。
setattr(object, name, value)
object -- 对象。
name -- 字符串,对象属性。
value -- 属性值。 >>>class A(object):
... bar = 1
...
>>> a = A()
>>> getattr(a, 'bar') # 获取属性 bar 值
1
>>> setattr(a, 'bar', 5) # 设置属性 bar 值
>>> a.bar
5
sorted()
对所有可迭代的对象进行排序操作。
>>> a = [1,3,5,97,12,55,33]
>>> x = sorted(a)
>>> x
[1, 3, 5, 12, 33, 55, 97]
staticmethod()
返回函数的静态方法。
class C(object):
@staticmethod
def f():
print('runoob'); C.f(); # 静态方法无需实例化
cobj = C()
cobj.f() # 也可以实例化后调用 ##输出
runoob
runoob
str()
将对象转化为文本的形式。
sum()
对系列进行求和计算。
sum(iterable[, start])
- iterable -- 可迭代对象,如:列表、元组、集合。
- start -- 指定相加的参数,如果没有设置这个值,默认为0。
>>> a = [1,2,3]
>>> sum(a)
6
super()
用于调用父类(超类)的一个方法。用于面向对象继承。
super(type[, object-or-type])
- type -- 类。
- object-or-type -- 类,一般是 self
tuple()
将可迭代系列(如列表)转换为元组。
tuple( iterable )
iterable -- 要转换为元组的可迭代序列。
type()
只有第一个参数则返回对象的类型,三个参数返回新的类型对象。
type(object)
type(name, bases, dict)
- name -- 类的名称。
- bases -- 基类的元组。
- dict -- 字典,类内定义的命名空间变量。
vars()
返回对象object的属性和属性值的字典对象。
>>> class Test:
... a = 1
...
>>> print(vars(Test))
{'a': 1, '__module__': '__main__', '__doc__': None}
zip()
用于将可迭代的对象作为参数,将对象中对应的元素打包成一个个元组,然后返回由这些元组组成的对象,这样做的好处是节约了不少的内存。
>>> a
[1, 2, 3]
>>> b=['a','b','c']
>>> print(zip(a,b))
<zip object at 0x000001DCD4A30108>
>>> for i in zip(a,b):
... print(i)
...
(1, 'a')
(2, 'b')
(3, 'c')
__import__()
用于动态加载类和函数 。
__import__('a') # 导入 a.py 模块
Python内置方法/函数的更多相关文章
- 匿名函数 python内置方法(max/min/filter/map/sorted/reduce)面向过程编程
目录 函数进阶三 1. 匿名函数 1. 什么是匿名函数 2. 匿名函数的语法 3. 能和匿名函数联用的一些方法 2. python解释器内置方法 3. 异常处理 面向过程编程 函数进阶三 1. 匿名函 ...
- Python内置方法详解
1. 字符串内置方法详解 为何要有字符串?相对于元组.列表等,对于唯一类型的定义,字符串具有最简单的形式. 字符串往往以变量接收,变量名. 可以查看所有的字符串的内置方法,如: 1> count ...
- python 内置方法、数据序列化
abc(*args, **kwargs) 取绝对值 def add(a,b,f): return f(a)+f(b) res = add(3,-6,abs) print(res) all(*args, ...
- 基于python内置方法进行代码混淆
0x00 动态加载模块 在python脚本中,直接使用import os.import subprocess或from os import system这种方法很容易被规则检测,即使使用其它执行命令的 ...
- python内置方法
1. 简介 本指南归纳于我的几个月的博客,主题是 魔法方法 . 什么是魔法方法呢?它们在面向对象的Python的处处皆是.它们是一些可以让你对类添加"魔法"的特殊方法. 它们经常是 ...
- Python内置方法的时间复杂度(转)
原文:http://www.orangecube.net/python-time-complexity 本文翻译自Python Wiki本文基于GPL v2协议,转载请保留此协议. 本页面涵盖了Pyt ...
- Python内置方法的时间复杂度
转载自:http://www.orangecube.NET/Python-time-complexity 本页面涵盖了Python中若干方法的时间复杂度(或者叫"大欧"," ...
- Python 内置方法
1. abs() 取绝对值函数 #!/usr/bin/env python # _*_ coding: UTF-8 _*_ # Author:taoke i = 100 print(abs(i)) i ...
- python内置方法大全
数学运算 abs:求数值的绝对值 >>> abs(-2) 2 divmod:返回两个数值的商和余数 >>> divmod(5,2) (2, 1) >> ...
随机推荐
- 如何在IDEA的maven项目中连接并使用MySQL8.0
首先看一下我的基本的开发环境: 操作系统:MacOS 10.13.5 编辑器:IDEA 2018.3 其他:MySQL8.0.15.Maven 3.3.9.JDK 1.8 好,下面就正式开始: 第一步 ...
- opencv —— minEnclosingCircle、fitEllipse 寻找包裹轮廓的最小圆、点集拟合椭圆
寻找包裹轮廓的最小圆:minEnclosingCircle 函数 返回圆应满足:① 轮廓上的点均在圆形空间内.② 没有面积更小的满足条件的圆. void minEnclosingCircle(Inpu ...
- mybatis 测试输出SQL语句到控制台配置
1: mybatis-config.xml <?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE ...
- 《Git 从入门到体系》- 写给自己的话
我听过的对我很有冲击力的观点是:知识不成体系就是垃圾.这个观点不一定对,但是却是给我的冲击很大. 我记得以前在咖啡馆和一个博士医生聊天,他提出了这个观点:知识不成体系就是垃圾.听了这个观点我很想反驳他 ...
- P5840 [COCI2015]Divljak
// powered by c++11 // by Isaunoya #include <bits/stdc++.h> #define rep(i, x, y) for (register ...
- 最短路径:初涉Dijkstra算法
模板题目:https://www.luogu.com.cn/problem/P1339 我的代码: #include<cstdio> #include<cstring> #in ...
- webApi前端ajax调用后端返回{"readyState":0,"status":0,"statusText":"error"}解决方案
var url = data.url, params = data.params, try_times = data.try_times , async = data.sync == 'false' ...
- C# WPF从RIOT API获取数据(RIOT代表作品《英雄联盟》)
微信公众号:Dotnet9,网站:Dotnet9,问题或建议:请网站留言, 如果对您有所帮助:欢迎赞赏. C# WPF从RIOT API获取数据(RIOT代表作品<英雄联盟>) 阅读导航 ...
- Python之lambda表达式的妙用
用法 Python的lambda表达式用于构建匿名函数,基本语法是在冒号左边放原函数的参数,可以有多个参数,用逗号隔开即可:冒号右边是返回值. >>> lambda x,y: (x+ ...
- windows的系统变量
在Windows cmd小黑框里输入set命令,可以查看现有的系统变量 “="前的部分就是变量名. %USERPROFILE% =C:\Users\用户名 %SystemRoot% =C:\ ...