数学运算

类型转换

序列操作

对象操作

  • 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. 跟我学ASP.NET MVC之三:完整的ASP.NET MVC程序-PartyInvites

    摘要: 在这篇文章中,我将在一个例子中实际地展示MVC. 场景 假设一个朋友决定举办一个新年晚会,她邀请我创建一个用来邀请朋友参加晚会的WEB程序.她提出了四个注意的需求: 一个首页展示这个晚会 一个 ...

  2. webcron

    一个定时任务管理器,基于Go语言和beego框架开发.用于统一管理项目中的定时任务,提供可视化配置界面.执行日志记录.邮件通知等功能,无需依赖*unix下的crontab服务. 项目背景 开发此项目是 ...

  3. 【BZOJ 2744】【HEOI2012】朋友圈

    题目链接: TP 题解: 对于A国,我们发现,最大团一定不大于2.对于B国,发现同奇偶性点之间都有边,不同奇偶性之间可能有边,也就是说对于B国是一个二分图最大团,也就是求B国补图的二分图最大独立集.然 ...

  4. BZOJ_1342_[Baltic2007]Sound静音问题_单调队列

    BZOJ_1342_[Baltic2007]Sound静音问题_单调队列 题意: 给出n个数,求∑[ max{a[i]~a[i+m-1]} - min{a[i]~a[i+m-1]} <= c ] ...

  5. CentOS7 配置SVN服务器

    也可以参考这里:https://jingyan.baidu.com/article/148a1921d84be34d71c3b18f.html 1.安装svn yum install -y subve ...

  6. Redis详解(一)------ redis的简介与安装

    工作中一直在用 Redis,但是一直没有进行系统的总结,这个系列的博客将整体的介绍 Redis 的用法. 1.Redis 的简介 Redis:REmote DIctionary Server(远程字典 ...

  7. python--装饰器(附偏函数、断言)

    博客地址:http://www.cnblogs.com/yudanqu/ 概念:装饰器是一个闭包,把一个函数当做参数返回一个替代版的函数,本质上就是一个返回函数的函数 装饰器就是在我们需要的一个函数外 ...

  8. sudo apt-get update: 0% [正在等待报头]

    问题描述:使用apt-get下载一个文件,由于下载的太慢,使用Ctrl+C强制结束.然后输入sudo apt-get update,想继续下载其他文件.结果出现如标题所示的错误,截图如下:按照网上说的 ...

  9. 2D图形如何运动模拟出3D效果

    一.先看看实现效果图 (左边的2d图片如何运动出右边3d的效果)                                      引言: 对于这个题目,真的很尴尬,不知道取啥,就想了这个题目 ...

  10. java基础(六)-----String性质深入解析

    本文将讲解String的几个性质. 一.String的不可变性 对于初学者来说,很容易误认为String对象是可以改变的,特别是+链接时,对象似乎真的改变了.然而,String对象一经创建就不可以修改 ...