数学运算

类型转换

序列操作

对象操作

  • help:返回对象的帮助信息
  •  >>> help(str)
    Help on class str in module builtins: class str(object)
    | str(object='') -> str
    | str(bytes_or_buffer[, encoding[, errors]]) -> str
    |
    | Create a new string object from the given object. If encoding or
    | errors is specified, then the object must expose a data buffer
    | that will be decoded using the given encoding and error handler.
    | Otherwise, returns the result of object.__str__() (if defined)
    | or repr(object).
    | encoding defaults to sys.getdefaultencoding().
    | errors defaults to 'strict'.
    |
    | Methods defined here:
    |
    | __add__(self, value, /)
    | Return self+value.
    |
    ***************************
  • dir:返回对象或者当前作用域内的属性列表
     >>> import math
    >>> math
    <module 'math' (built-in)>
    >>> dir(math)
    ['__doc__', '__loader__', '__name__', '__package__', '__spec__', 'acos', 'acosh', 'asin', 'asinh', 'atan', 'atan2', 'atanh', 'ceil', 'copysign', 'cos', 'cosh', 'degrees', 'e', 'erf', 'erfc', 'exp', 'expm1', 'fabs', 'factorial', 'floor', 'fmod', 'frexp', 'fsum', 'gamma', 'gcd', 'hypot', 'inf', 'isclose', 'isfinite', 'isinf', 'isnan', 'ldexp', 'lgamma', 'log', 'log10', 'log1p', 'log2', 'modf', 'nan', 'pi', 'pow', 'radians', 'sin', 'sinh', 'sqrt', 'tan', 'tanh', 'trunc']
  • id:返回对象的唯一标识符
     >>> a = 'some text'
    >>> id(a)
    69228568
  • hash:获取对象的哈希值
     >>> hash('good good study')
    1032709256
  • type:返回对象的类型,或者根据传入的参数创建一个新的类型
     >>> type(1) # 返回对象的类型
    <class 'int'> #使用type函数创建类型D,含有属性InfoD
    >>> D = type('D',(A,B),dict(InfoD='some thing defined in D'))
    >>> d = D()
    >>> d.InfoD
    'some thing defined in D'
  • len:返回对象的长度
     >>> len('abcd') # 字符串
    >>> len(bytes('abcd','utf-8')) # 字节数组
    >>> len((1,2,3,4)) # 元组
    >>> len([1,2,3,4]) # 列表
    >>> len(range(1,5)) # range对象
    >>> len({'a':1,'b':2,'c':3,'d':4}) # 字典
    >>> len({'a','b','c','d'}) # 集合
    >>> len(frozenset('abcd')) #不可变集合
  • ascii:返回对象的可打印表字符串表现方式
     >>> ascii(1)
    ''
    >>> ascii('&')
    "'&'"
    >>> ascii(9000000)
    ''
    >>> ascii('中文') #非ascii字符
    "'\\u4e2d\\u6587'"
  • format:格式化显示值
     #字符串可以提供的参数 's' None
    >>> format('some string','s')
    'some string'
    >>> format('some string')
    'some string' #整形数值可以提供的参数有 'b' 'c' 'd' 'o' 'x' 'X' 'n' None
    >>> format(3,'b') #转换成二进制
    ''
    >>> format(97,'c') #转换unicode成字符
    'a'
    >>> format(11,'d') #转换成10进制
    ''
    >>> format(11,'o') #转换成8进制
    ''
    >>> format(11,'x') #转换成16进制 小写字母表示
    'b'
    >>> format(11,'X') #转换成16进制 大写字母表示
    'B'
    >>> format(11,'n') #和d一样
    ''
    >>> format(11) #默认和d一样
    '' #浮点数可以提供的参数有 'e' 'E' 'f' 'F' 'g' 'G' 'n' '%' None
    >>> format(314159267,'e') #科学计数法,默认保留6位小数
    '3.141593e+08'
    >>> format(314159267,'0.2e') #科学计数法,指定保留2位小数
    '3.14e+08'
    >>> format(314159267,'0.2E') #科学计数法,指定保留2位小数,采用大写E表示
    '3.14E+08'
    >>> format(314159267,'f') #小数点计数法,默认保留6位小数
    '314159267.000000'
    >>> format(3.14159267000,'f') #小数点计数法,默认保留6位小数
    '3.141593'
    >>> format(3.14159267000,'0.8f') #小数点计数法,指定保留8位小数
    '3.14159267'
    >>> format(3.14159267000,'0.10f') #小数点计数法,指定保留10位小数
    '3.1415926700'
    >>> format(3.14e+1000000,'F') #小数点计数法,无穷大转换成大小字母
    'INF' #g的格式化比较特殊,假设p为格式中指定的保留小数位数,先尝试采用科学计数法格式化,得到幂指数exp,如果-4<=exp<p,则采用小数计数法,并保留p-1-exp位小数,否则按小数计数法计数,并按p-1保留小数位数
    >>> format(0.00003141566,'.1g') #p=1,exp=-5 ==》 -4<=exp<p不成立,按科学计数法计数,保留0位小数点
    '3e-05'
    >>> format(0.00003141566,'.2g') #p=1,exp=-5 ==》 -4<=exp<p不成立,按科学计数法计数,保留1位小数点
    '3.1e-05'
    >>> format(0.00003141566,'.3g') #p=1,exp=-5 ==》 -4<=exp<p不成立,按科学计数法计数,保留2位小数点
    '3.14e-05'
    >>> format(0.00003141566,'.3G') #p=1,exp=-5 ==》 -4<=exp<p不成立,按科学计数法计数,保留0位小数点,E使用大写
    '3.14E-05'
    >>> format(3.1415926777,'.1g') #p=1,exp=0 ==》 -4<=exp<p成立,按小数计数法计数,保留0位小数点
    ''
    >>> format(3.1415926777,'.2g') #p=1,exp=0 ==》 -4<=exp<p成立,按小数计数法计数,保留1位小数点
    '3.1'
    >>> format(3.1415926777,'.3g') #p=1,exp=0 ==》 -4<=exp<p成立,按小数计数法计数,保留2位小数点
    '3.14'
    >>> format(0.00003141566,'.1n') #和g相同
    '3e-05'
    >>> format(0.00003141566,'.3n') #和g相同
    '3.14e-05'
    >>> format(0.00003141566) #和g相同
    '3.141566e-05'
  • vars:返回当前作用域内的局部变量和其值组成的字典,或者返回对象的属性列表
     #作用于类实例
    >>> class A(object):
    pass >>> a.__dict__
    {}
    >>> vars(a)
    {}
    >>> a.name = 'Kim'
    >>> a.__dict__
    {'name': 'Kim'}
    >>> vars(a)
    {'name': 'Kim'}

反射操作

  • __import__:动态导入模块

     index = __import__('index')
    index.sayHello()
  • isinstance:判断对象是否是类或者类型元组中任意类元素的实例
     >>> isinstance(1,int)
    True
    >>> isinstance(1,str)
    False
    >>> isinstance(1,(int,str))
    True
  • issubclass:判断类是否是另外一个类或者类型元组中任意类元素的子类
     >>> issubclass(bool,int)
    True
    >>> issubclass(bool,str)
    False >>> issubclass(bool,(str,int))
    True
  • hasattr:检查对象是否含有属性
     #定义类A
    >>> class Student:
    def __init__(self,name):
    self.name = name >>> s = Student('Aim')
    >>> hasattr(s,'name') #a含有name属性
    True
    >>> hasattr(s,'age') #a不含有age属性
    False
  • getattr:获取对象的属性值
     #定义类Student
    >>> class Student:
    def __init__(self,name):
    self.name = name >>> getattr(s,'name') #存在属性name
    'Aim' >>> getattr(s,'age',6) #不存在属性age,但提供了默认值,返回默认值 >>> getattr(s,'age') #不存在属性age,未提供默认值,调用报错
    Traceback (most recent call last):
    File "<pyshell#17>", line 1, in <module>
    getattr(s,'age')
    AttributeError: 'Stduent' object has no attribute 'age'
  • setattr:设置对象的属性值
     >>> class Student:
    def __init__(self,name):
    self.name = name >>> a = Student('Kim')
    >>> a.name
    'Kim'
    >>> setattr(a,'name','Bob')
    >>> a.name
    'Bob'
  • delattr:删除对象的属性
     #定义类A
    >>> class A:
    def __init__(self,name):
    self.name = name
    def sayHello(self):
    print('hello',self.name) #测试属性和方法
    >>> a.name
    '小麦'
    >>> a.sayHello()
    hello 小麦 #删除属性
    >>> delattr(a,'name')
    >>> a.name
    Traceback (most recent call last):
    File "<pyshell#47>", line 1, in <module>
    a.name
    AttributeError: 'A' object has no attribute 'name'
  • callable:检测对象是否可被调用
     >>> class B: #定义类B
    def __call__(self):
    print('instances are callable now.') >>> callable(B) #类B是可调用对象
    True
    >>> b = B() #调用类B
    >>> callable(b) #实例b是可调用对象
    True
    >>> b() #调用实例b成功
    instances are callable now.

变量操作

  • globals:返回当前作用域内的全局变量和其值组成的字典

     >>> globals()
    {'__spec__': None, '__package__': None, '__builtins__': <module 'builtins' (built-in)>, '__name__': '__main__', '__doc__': None, '__loader__': <class '_frozen_importlib.BuiltinImporter'>}
    >>> a = 1
    >>> globals() #多了一个a
    {'__spec__': None, '__package__': None, '__builtins__': <module 'builtins' (built-in)>, 'a': 1, '__name__': '__main__', '__doc__': None, '__loader__': <class '_frozen_importlib.BuiltinImporter'>}
  • locals:返回当前作用域内的局部变量和其值组成的字典
     >>> def f():
    print('before define a ')
    print(locals()) #作用域内无变量
    a = 1
    print('after define a')
    print(locals()) #作用域内有一个a变量,值为1 >>> f
    <function f at 0x03D40588>
    >>> f()
    before define a
    {}
    after define a
    {'a': 1}

交互操作

文件操作

编译执行

装饰器

  • property:标示属性的装饰器

     >>> class C:
    def __init__(self):
    self._name = ''
    @property
    def name(self):
    """i'm the 'name' property."""
    return self._name
    @name.setter
    def name(self,value):
    if value is None:
    raise RuntimeError('name can not be None')
    else:
    self._name = value >>> c = C() >>> c.name # 访问属性
    ''
    >>> c.name = None # 设置属性时进行验证
    Traceback (most recent call last):
    File "<pyshell#84>", line 1, in <module>
    c.name = None
    File "<pyshell#81>", line 11, in name
    raise RuntimeError('name can not be None')
    RuntimeError: name can not be None >>> c.name = 'Kim' # 设置属性
    >>> c.name # 访问属性
    'Kim' >>> del c.name # 删除属性,不提供deleter则不能删除
    Traceback (most recent call last):
    File "<pyshell#87>", line 1, in <module>
    del c.name
    AttributeError: can't delete attribute
    >>> c.name
    'Kim'
  • classmethod:标示方法为类方法的装饰器
     >>> class C:
    @classmethod
    def f(cls,arg1):
    print(cls)
    print(arg1) >>> C.f('类对象调用类方法')
    <class '__main__.C'>
    类对象调用类方法 >>> c = C()
    >>> c.f('类实例对象调用类方法')
    <class '__main__.C'>
    类实例对象调用类方法
  • staticmethod:标示方法为静态方法的装饰器
     # 使用装饰器定义静态方法
    >>> class Student(object):
    def __init__(self,name):
    self.name = name
    @staticmethod
    def sayHello(lang):
    print(lang)
    if lang == 'en':
    print('Welcome!')
    else:
    print('你好!') >>> Student.sayHello('en') #类调用,'en'传给了lang参数
    en
    Welcome! >>> b = Student('Kim')
    >>> b.sayHello('zh') #类实例对象调用,'zh'传给了lang参数
    zh
    你好

python内置方法大全的更多相关文章

  1. python内置函数大全(分类)

    python内置函数大全 python内建函数 最近一直在看python的document,打算在基础方面重点看一下python的keyword.Build-in Function.Build-in ...

  2. Python内置方法详解

    1. 字符串内置方法详解 为何要有字符串?相对于元组.列表等,对于唯一类型的定义,字符串具有最简单的形式. 字符串往往以变量接收,变量名. 可以查看所有的字符串的内置方法,如: 1> count ...

  3. 匿名函数 python内置方法(max/min/filter/map/sorted/reduce)面向过程编程

    目录 函数进阶三 1. 匿名函数 1. 什么是匿名函数 2. 匿名函数的语法 3. 能和匿名函数联用的一些方法 2. python解释器内置方法 3. 异常处理 面向过程编程 函数进阶三 1. 匿名函 ...

  4. python 内置方法、数据序列化

    abc(*args, **kwargs) 取绝对值 def add(a,b,f): return f(a)+f(b) res = add(3,-6,abs) print(res) all(*args, ...

  5. 【学习笔记】--- 老男孩学Python,day14 python内置函数大全

    参考:  https://www.cnblogs.com/pyyu/p/6702896.html http://www.runoob.com/python3/python3-built-in-func ...

  6. python基础===python内置函数大全

    python python内建函数 一.数学运算类 abs(x) 求绝对值1.参数可以是整型,也可以是复数2.若参数是复数,则返回复数的模 complex([real[, imag]]) 创建一个复数 ...

  7. 基于python内置方法进行代码混淆

    0x00 动态加载模块 在python脚本中,直接使用import os.import subprocess或from os import system这种方法很容易被规则检测,即使使用其它执行命令的 ...

  8. python内置方法

    1. 简介 本指南归纳于我的几个月的博客,主题是 魔法方法 . 什么是魔法方法呢?它们在面向对象的Python的处处皆是.它们是一些可以让你对类添加"魔法"的特殊方法. 它们经常是 ...

  9. Python内置方法的时间复杂度(转)

    原文:http://www.orangecube.net/python-time-complexity 本文翻译自Python Wiki本文基于GPL v2协议,转载请保留此协议. 本页面涵盖了Pyt ...

随机推荐

  1. tomcat设置端口号,访问指定ip就访问指定项目

    1.修改背景: A.通常我们访问我们的web应用格式为: http://ip:端口号/项目名称 例如: http://127.0.0.1:8080/projectName B.如果想直接输入" ...

  2. Python常用算法(二)

    1.快速排序 过一趟排序将要排序的数据分割成独立的两部分,其中一部分的所有数据都比另外一部分的所有数据都要小 一般选取第一个数作为关键数据k,我们要把比k小的所有数据移到它的左面,从后往前找第一个比它 ...

  3. 【BZOJ2339】【HNOI2011】卡农

    题解: 首先用二进制表示每个音阶是否使用,那么共有$2^{n}-1$(空集不可行)种片段,用$a_{i}$来表示每个片段,问题就是求满足$a_{1}\left (xor\right)a_{2}\lef ...

  4. 权限系统与RBAC模型概述[绝对经典]

    0. 前言 一年前,我负责的一个项目中需要权限管理.当时凭着自己的逻辑设计出了一套权限管理模型,基本原理与RBAC非常相似,只是过于简陋.当时google了一些权限管理的资料,从中了解到早就有了RBA ...

  5. POI读取excel文件。

    1) poi读取现成.xls文件,不需要自己建立.xls ====ReadExcel​类​==== package cust.com.excelToDataTest; import java.io.F ...

  6. Description Resource Path Location Type Cannot change version of project facet Dynamic Web Module to 2.3.

    报错信息:Description Resource Path Location Type Cannot change version of project facet Dynamic Web Modu ...

  7. Mybatis学习笔记之一(环境搭建和入门案例介绍)

    一.Mybatis概述 1.1 Mybatis介绍 MyBatis 本是apache的一个开源项目iBatis, 2010年这个项目由apache software foundation 迁移到了go ...

  8. Mtcnn进行人脸剪裁和对齐B

    Mtcnn进行人脸剪裁和对齐 from scipy import misc import tensorflow as tf import detect_face import cv2 # import ...

  9. .NET高性能编程 - C#如何安全、高效地玩转任何种类的内存之Span的本质(一)。

    前言 作为.net程序员,使用过指针,写过不安全代码吗? 为什么要使用指针,什么时候需要使用它,以及如何安全.高效地使用它? 如果能很好地回答这几个问题,那么就能很好地理解今天了主题了.C#构建了一个 ...

  10. 浅谈URL跳转与Webview安全

    学习信息安全技术的过程中,用开阔的眼光看待安全问题会得到不同的结论. 在一次测试中我用Burpsuite搜索了关键词url找到了某处url,测试一下发现waf拦截了指向外域的请求,于是开始尝试绕过.第 ...