第二篇.1、python基础之数据类型与变量
一.变量
- 1 什么是变量之声明变量
- #变量名=变量值
- age=18
- gender1='male'
- gender2='female'
- 2 为什么要有变量
- 变量作用:“变”=>变化,“量”=>计量/保存状态
程序的运行本质是一系列状态的变化,变量的目的就是用来保存状态,变量值的变化就构成了程序运行的不同结果。
例如:CS枪战,一个人的生命可以表示为life=active表示存活,当满足某种条件后修改变量life=inactive表示死亡。
3 变量值之类型与对象
程序中需要处理的状态很多,于是有了不同类型的变量值,x='egon',变量值'egon'存放与内存中,绑定一个名字x,变量值即我们要存储的数据。- 在python中所有数据都是围绕对象这个概念来构建的,对象包含一些基本的数据类型:数字,字符串,列表,元组,字典等
程序中存储的所有数据都是对象,
一个对象(如a=1)有:
一个身份(id)
一个类型(type)
一个值(通过变量名a来查看)
1 对象的类型也称为对象的类别,python为每个类型都定制了属于该类型特有的方法,极大地方便了开发者对数据的处理
2 创建某个特定类型的对象也称为创建了该类型的一个实例,工厂函数的概念来源于此
4 可变对象与不可变对象
实例被创建后,身份和类型是不可变的,
如果值是不可以被修改的,则是不可变对象
如果值是可以被修改的,则是可变对象- 5 容器对象
某个对象包含对其他对象的引用,则称为容器或集合- 6 对象的属性和方法
属性就是对象的值,方法就是调用时将在对象本身上执行某些操作的函数,使用.运算符可以访问对象的属性和方法,如
a=3+4j
a.real- b=[1,2,3]
b.append(4)- 7 身份比较,类型比较,值比较
x=1
y=1
x is y #x与y是同一个对象,is比较的是id,即身份
type(x) is type(y) #对象的类型本身也是一个对象,所以可以用is比较两个对象的类型的身份
x == y #==比较的是两个对象的值是否相等- 7 变量的命名规范
- 变量命名规则遵循标识符命名规则,详见第二篇
8 变量的赋值操作
- 与c语言的区别在于变量赋值操作无返回值
- 链式赋值:y=x=a=1
- 多元赋值:x,y=1,2 x,y=y,x
- 增量赋值:x+=1
二.数据类型
2.1 什么是数据类型及数据类型分类
- 程序的本质就是驱使计算机去处理各种状态的变化,这些状态分为很多种
- 例如英雄联盟游戏,一个人物角色有名字,钱,等级,装备等特性,大家第一时间会想到这么表示
名字:德玛西亚------------>字符串
钱:10000 ------------>数字
等级:15 ------------>数字
装备:鞋子,日炎斗篷,兰顿之兆---->列表
(记录这些人物特性的是变量,这些特性的真实存在则是变量的值,存不同的特性需要用不同类型的值)- python中的数据类型
python使用对象模型来存储数据,每一个数据类型都有一个内置的类,每新建一个数据,实际就是在初始化生成一个对象,即所有数据都是对象
对象三个特性
- 身份:内存地址,可以用id()获取
- 类型:决定了该对象可以保存什么类型值,可执行何种操作,需遵循什么规则,可用type()获取
- 值:对象保存的真实数据
- 注:我们在定义数据类型,只需这样:x=1,内部生成1这一内存对象会自动触发,我们无需关心
- 这里的字符串、数字、列表等都是数据类型(用来描述某种状态或者特性)除此之外还有很多其他数据,处理不同的数据就需要定义不同的数据类型
标准类型 | 其他类型 |
数字 | 类型type |
字符串 | Null |
列表 | 文件 |
元组 | 集合 |
字典 | 函数/方法 |
类 | |
模块 |
2.2 标准数据类型:
2.2.1 数字
定义:a=1
特性:
1.只能存放一个值
2.一经定义,不可更改
3.直接访问
分类:整型,长整型,布尔,浮点,复数
2.2.1.1 整型:
Python的整型相当于C中的long型,Python中的整数可以用十进制,八进制,十六进制表示。
- >>> 10
- 10 --------->默认十进制
- >>> oct(10)
- '012' --------->八进制表示整数时,数值前面要加上一个前缀“0”
- >>> hex(10)
- '0xa' --------->十六进制表示整数时,数字前面要加上前缀0X或0x
python2.*与python3.*关于整型的区别
- python2.*
在32位机器上,整数的位数为32位,取值范围为-2**31~2**31-1,即-2147483648~2147483647- 在64位系统上,整数的位数为64位,取值范围为-2**63~2**63-1,即-9223372036854775808~9223372036854775807
python3.*整形长度无限制
整型工厂函数int()
- class int(object):
- """
- int(x=) -> int or long
- int(x, base=) -> int or long
- Convert a number or string to an integer, or return if no arguments
- are given. If x is floating point, the conversion truncates towards zero.
- If x is outside the integer range, the function returns a long instead.
- If x is not a number or if base is given, then x must be a string or
- Unicode object representing an integer literal in the given base. The
- literal can be preceded by '+' or '-' and be surrounded by whitespace.
- The base defaults to . Valid bases are and -. Base means to
- interpret the base from the string as an integer literal.
- >>> int('0b100', base=)
- """
- def bit_length(self):
- """ 返回表示该数字的时占用的最少位数 """
- """
- int.bit_length() -> int
- Number of bits necessary to represent self in binary.
- >>> bin()
- '0b100101'
- >>> ().bit_length()
- """
- return
- def conjugate(self, *args, **kwargs): # real signature unknown
- """ 返回该复数的共轭复数 """
- """ Returns self, the complex conjugate of any int. """
- pass
- def __abs__(self):
- """ 返回绝对值 """
- """ x.__abs__() <==> abs(x) """
- pass
- def __add__(self, y):
- """ x.__add__(y) <==> x+y """
- pass
- def __and__(self, y):
- """ x.__and__(y) <==> x&y """
- pass
- def __cmp__(self, y):
- """ 比较两个数大小 """
- """ x.__cmp__(y) <==> cmp(x,y) """
- pass
- def __coerce__(self, y):
- """ 强制生成一个元组 """
- """ x.__coerce__(y) <==> coerce(x, y) """
- pass
- def __divmod__(self, y):
- """ 相除,得到商和余数组成的元组 """
- """ x.__divmod__(y) <==> divmod(x, y) """
- pass
- def __div__(self, y):
- """ x.__div__(y) <==> x/y """
- pass
- def __float__(self):
- """ 转换为浮点类型 """
- """ x.__float__() <==> float(x) """
- pass
- def __floordiv__(self, y):
- """ x.__floordiv__(y) <==> x//y """
- pass
- def __format__(self, *args, **kwargs): # real signature unknown
- pass
- def __getattribute__(self, name):
- """ x.__getattribute__('name') <==> x.name """
- pass
- def __getnewargs__(self, *args, **kwargs): # real signature unknown
- """ 内部调用 __new__方法或创建对象时传入参数使用 """
- pass
- def __hash__(self):
- """如果对象object为哈希表类型,返回对象object的哈希值。哈希值为整数。在字典查找中,哈希值用于快速比较字典的键。两个数值如果相等,则哈希值也相等。"""
- """ x.__hash__() <==> hash(x) """
- pass
- def __hex__(self):
- """ 返回当前数的 十六进制 表示 """
- """ x.__hex__() <==> hex(x) """
- pass
- def __index__(self):
- """ 用于切片,数字无意义 """
- """ x[y:z] <==> x[y.__index__():z.__index__()] """
- pass
- def __init__(self, x, base=): # known special case of int.__init__
- """ 构造方法,执行 x = 123 或 x = int(10) 时,自动调用,暂时忽略 """
- """
- int(x=) -> int or long
- int(x, base=) -> int or long
- Convert a number or string to an integer, or return if no arguments
- are given. If x is floating point, the conversion truncates towards zero.
- If x is outside the integer range, the function returns a long instead.
- If x is not a number or if base is given, then x must be a string or
- Unicode object representing an integer literal in the given base. The
- literal can be preceded by '+' or '-' and be surrounded by whitespace.
- The base defaults to . Valid bases are and -. Base means to
- interpret the base from the string as an integer literal.
- >>> int('0b100', base=)
- # (copied from class doc)
- """
- pass
- def __int__(self):
- """ 转换为整数 """
- """ x.__int__() <==> int(x) """
- pass
- def __invert__(self):
- """ x.__invert__() <==> ~x """
- pass
- def __long__(self):
- """ 转换为长整数 """
- """ x.__long__() <==> long(x) """
- pass
- def __lshift__(self, y):
- """ x.__lshift__(y) <==> x<<y """
- pass
- def __mod__(self, y):
- """ x.__mod__(y) <==> x%y """
- pass
- def __mul__(self, y):
- """ x.__mul__(y) <==> x*y """
- pass
- def __neg__(self):
- """ x.__neg__() <==> -x """
- pass
- @staticmethod # known case of __new__
- def __new__(S, *more):
- """ T.__new__(S, ...) -> a new object with type S, a subtype of T """
- pass
- def __nonzero__(self):
- """ x.__nonzero__() <==> x != 0 """
- pass
- def __oct__(self):
- """ 返回改值的 八进制 表示 """
- """ x.__oct__() <==> oct(x) """
- pass
- def __or__(self, y):
- """ x.__or__(y) <==> x|y """
- pass
- def __pos__(self):
- """ x.__pos__() <==> +x """
- pass
- def __pow__(self, y, z=None):
- """ 幂,次方 """
- """ x.__pow__(y[, z]) <==> pow(x, y[, z]) """
- pass
- def __radd__(self, y):
- """ x.__radd__(y) <==> y+x """
- pass
- def __rand__(self, y):
- """ x.__rand__(y) <==> y&x """
- pass
- def __rdivmod__(self, y):
- """ x.__rdivmod__(y) <==> divmod(y, x) """
- pass
- def __rdiv__(self, y):
- """ x.__rdiv__(y) <==> y/x """
- pass
- def __repr__(self):
- """转化为解释器可读取的形式 """
- """ x.__repr__() <==> repr(x) """
- pass
- def __str__(self):
- """转换为人阅读的形式,如果没有适于人阅读的解释形式的话,则返回解释器课阅读的形式"""
- """ x.__str__() <==> str(x) """
- pass
- def __rfloordiv__(self, y):
- """ x.__rfloordiv__(y) <==> y//x """
- pass
- def __rlshift__(self, y):
- """ x.__rlshift__(y) <==> y<<x """
- pass
- def __rmod__(self, y):
- """ x.__rmod__(y) <==> y%x """
- pass
- def __rmul__(self, y):
- """ x.__rmul__(y) <==> y*x """
- pass
- def __ror__(self, y):
- """ x.__ror__(y) <==> y|x """
- pass
- def __rpow__(self, x, z=None):
- """ y.__rpow__(x[, z]) <==> pow(x, y[, z]) """
- pass
- def __rrshift__(self, y):
- """ x.__rrshift__(y) <==> y>>x """
- pass
- def __rshift__(self, y):
- """ x.__rshift__(y) <==> x>>y """
- pass
- def __rsub__(self, y):
- """ x.__rsub__(y) <==> y-x """
- pass
- def __rtruediv__(self, y):
- """ x.__rtruediv__(y) <==> y/x """
- pass
- def __rxor__(self, y):
- """ x.__rxor__(y) <==> y^x """
- pass
- def __sub__(self, y):
- """ x.__sub__(y) <==> x-y """
- pass
- def __truediv__(self, y):
- """ x.__truediv__(y) <==> x/y """
- pass
- def __trunc__(self, *args, **kwargs):
- """ 返回数值被截取为整形的值,在整形中无意义 """
- pass
- def __xor__(self, y):
- """ x.__xor__(y) <==> x^y """
- pass
- denominator = property(lambda self: object(), lambda self, v: None, lambda self: None) # default
- """ 分母 = 1 """
- """the denominator of a rational number in lowest terms"""
- imag = property(lambda self: object(), lambda self, v: None, lambda self: None) # default
- """ 虚数,无意义 """
- """the imaginary part of a complex number"""
- numerator = property(lambda self: object(), lambda self, v: None, lambda self: None) # default
- """ 分子 = 数字大小 """
- """the numerator of a rational number in lowest terms"""
- real = property(lambda self: object(), lambda self, v: None, lambda self: None) # default
- """ 实属,无意义 """
- """the real part of a complex number"""
- int
- python2.
python2.7
- class int(object):
- """
- int(x=) -> integer
- int(x, base=) -> integer
- Convert a number or string to an integer, or return if no arguments
- are given. If x is a number, return x.__int__(). For floating point
- numbers, this truncates towards zero.
- If x is not a number or if base is given, then x must be a string,
- bytes, or bytearray instance representing an integer literal in the
- given base. The literal can be preceded by '+' or '-' and be surrounded
- by whitespace. The base defaults to . Valid bases are and -.
- Base means to interpret the base from the string as an integer literal.
- >>> int('0b100', base=)
- """
- def bit_length(self): # real signature unknown; restored from __doc__
- """ 返回表示该数字的时占用的最少位数 """
- """
- int.bit_length() -> int
- Number of bits necessary to represent self in binary.
- >>> bin()
- '0b100101'
- >>> ().bit_length()
- """
- return
- def conjugate(self, *args, **kwargs): # real signature unknown
- """ 返回该复数的共轭复数 """
- """ Returns self, the complex conjugate of any int. """
- pass
- @classmethod # known case
- def from_bytes(cls, bytes, byteorder, *args, **kwargs): # real signature unknown; NOTE: unreliably restored from __doc__
- """
- int.from_bytes(bytes, byteorder, *, signed=False) -> int
- Return the integer represented by the given array of bytes.
- The bytes argument must be a bytes-like object (e.g. bytes or bytearray).
- The byteorder argument determines the byte order used to represent the
- integer. If byteorder is 'big', the most significant byte is at the
- beginning of the byte array. If byteorder is 'little', the most
- significant byte is at the end of the byte array. To request the native
- byte order of the host system, use `sys.byteorder' as the byte order value.
- The signed keyword-only argument indicates whether two's complement is
- used to represent the integer.
- """
- pass
- def to_bytes(self, length, byteorder, *args, **kwargs): # real signature unknown; NOTE: unreliably restored from __doc__
- """
- int.to_bytes(length, byteorder, *, signed=False) -> bytes
- Return an array of bytes representing an integer.
- The integer is represented using length bytes. An OverflowError is
- raised if the integer is not representable with the given number of
- bytes.
- The byteorder argument determines the byte order used to represent the
- integer. If byteorder is 'big', the most significant byte is at the
- beginning of the byte array. If byteorder is 'little', the most
- significant byte is at the end of the byte array. To request the native
- byte order of the host system, use `sys.byteorder' as the byte order value.
- The signed keyword-only argument determines whether two's complement is
- used to represent the integer. If signed is False and a negative integer
- is given, an OverflowError is raised.
- """
- pass
- def __abs__(self, *args, **kwargs): # real signature unknown
- """ abs(self) """
- pass
- def __add__(self, *args, **kwargs): # real signature unknown
- """ Return self+value. """
- pass
- def __and__(self, *args, **kwargs): # real signature unknown
- """ Return self&value. """
- pass
- def __bool__(self, *args, **kwargs): # real signature unknown
- """ self != 0 """
- pass
- def __ceil__(self, *args, **kwargs): # real signature unknown
- """
- 整数返回自己
- 如果是小数
- math.ceil(3.1)返回4
- """
- """ Ceiling of an Integral returns itself. """
- pass
- def __divmod__(self, *args, **kwargs): # real signature unknown
- """ 相除,得到商和余数组成的元组 """
- """ Return divmod(self, value). """
- pass
- def __eq__(self, *args, **kwargs): # real signature unknown
- """ Return self==value. """
- pass
- def __float__(self, *args, **kwargs): # real signature unknown
- """ float(self) """
- pass
- def __floordiv__(self, *args, **kwargs): # real signature unknown
- """ Return self//value. """
- pass
- def __floor__(self, *args, **kwargs): # real signature unknown
- """ Flooring an Integral returns itself. """
- pass
- def __format__(self, *args, **kwargs): # real signature unknown
- pass
- def __getattribute__(self, *args, **kwargs): # real signature unknown
- """ Return getattr(self, name). """
- pass
- def __getnewargs__(self, *args, **kwargs): # real signature unknown
- pass
- def __ge__(self, *args, **kwargs): # real signature unknown
- """ Return self>=value. """
- pass
- def __gt__(self, *args, **kwargs): # real signature unknown
- """ Return self>value. """
- pass
- def __hash__(self, *args, **kwargs): # real signature unknown
- """ Return hash(self). """
- pass
- def __index__(self, *args, **kwargs): # real signature unknown
- """ 用于切片,数字无意义 """
- """ Return self converted to an integer, if self is suitable for use as an index into a list. """
- pass
- def __init__(self, x, base=): # known special case of int.__init__
- """ 构造方法,执行 x = 123 或 x = int(10) 时,自动调用,暂时忽略 """
- """
- int(x=) -> integer
- int(x, base=) -> integer
- Convert a number or string to an integer, or return if no arguments
- are given. If x is a number, return x.__int__(). For floating point
- numbers, this truncates towards zero.
- If x is not a number or if base is given, then x must be a string,
- bytes, or bytearray instance representing an integer literal in the
- given base. The literal can be preceded by '+' or '-' and be surrounded
- by whitespace. The base defaults to . Valid bases are and -.
- Base means to interpret the base from the string as an integer literal.
- >>> int('0b100', base=)
- # (copied from class doc)
- """
- pass
- def __int__(self, *args, **kwargs): # real signature unknown
- """ int(self) """
- pass
- def __invert__(self, *args, **kwargs): # real signature unknown
- """ ~self """
- pass
- def __le__(self, *args, **kwargs): # real signature unknown
- """ Return self<=value. """
- pass
- def __lshift__(self, *args, **kwargs): # real signature unknown
- """ Return self<<value. """
- pass
- def __lt__(self, *args, **kwargs): # real signature unknown
- """ Return self<value. """
- pass
- def __mod__(self, *args, **kwargs): # real signature unknown
- """ Return self%value. """
- pass
- def __mul__(self, *args, **kwargs): # real signature unknown
- """ Return self*value. """
- pass
- def __neg__(self, *args, **kwargs): # real signature unknown
- """ -self """
- pass
- @staticmethod # known case of __new__
- def __new__(*args, **kwargs): # real signature unknown
- """ Create and return a new object. See help(type) for accurate signature. """
- pass
- def __ne__(self, *args, **kwargs): # real signature unknown
- """ Return self!=value. """
- pass
- def __or__(self, *args, **kwargs): # real signature unknown
- """ Return self|value. """
- pass
- def __pos__(self, *args, **kwargs): # real signature unknown
- """ +self """
- pass
- def __pow__(self, *args, **kwargs): # real signature unknown
- """ Return pow(self, value, mod). """
- pass
- def __radd__(self, *args, **kwargs): # real signature unknown
- """ Return value+self. """
- pass
- def __rand__(self, *args, **kwargs): # real signature unknown
- """ Return value&self. """
- pass
- def __rdivmod__(self, *args, **kwargs): # real signature unknown
- """ Return divmod(value, self). """
- pass
- def __repr__(self, *args, **kwargs): # real signature unknown
- """ Return repr(self). """
- pass
- def __rfloordiv__(self, *args, **kwargs): # real signature unknown
- """ Return value//self. """
- pass
- def __rlshift__(self, *args, **kwargs): # real signature unknown
- """ Return value<<self. """
- pass
- def __rmod__(self, *args, **kwargs): # real signature unknown
- """ Return value%self. """
- pass
- def __rmul__(self, *args, **kwargs): # real signature unknown
- """ Return value*self. """
- pass
- def __ror__(self, *args, **kwargs): # real signature unknown
- """ Return value|self. """
- pass
- def __round__(self, *args, **kwargs): # real signature unknown
- """
- Rounding an Integral returns itself.
- Rounding with an ndigits argument also returns an integer.
- """
- pass
- def __rpow__(self, *args, **kwargs): # real signature unknown
- """ Return pow(value, self, mod). """
- pass
- def __rrshift__(self, *args, **kwargs): # real signature unknown
- """ Return value>>self. """
- pass
- def __rshift__(self, *args, **kwargs): # real signature unknown
- """ Return self>>value. """
- pass
- def __rsub__(self, *args, **kwargs): # real signature unknown
- """ Return value-self. """
- pass
- def __rtruediv__(self, *args, **kwargs): # real signature unknown
- """ Return value/self. """
- pass
- def __rxor__(self, *args, **kwargs): # real signature unknown
- """ Return value^self. """
- pass
- def __sizeof__(self, *args, **kwargs): # real signature unknown
- """ Returns size in memory, in bytes """
- pass
- def __str__(self, *args, **kwargs): # real signature unknown
- """ Return str(self). """
- pass
- def __sub__(self, *args, **kwargs): # real signature unknown
- """ Return self-value. """
- pass
- def __truediv__(self, *args, **kwargs): # real signature unknown
- """ Return self/value. """
- pass
- def __trunc__(self, *args, **kwargs): # real signature unknown
- """ Truncating an Integral returns itself. """
- pass
- def __xor__(self, *args, **kwargs): # real signature unknown
- """ Return self^value. """
- pass
- denominator = property(lambda self: object(), lambda self, v: None, lambda self: None) # default
- """the denominator of a rational number in lowest terms"""
- imag = property(lambda self: object(), lambda self, v: None, lambda self: None) # default
- """the imaginary part of a complex number"""
- numerator = property(lambda self: object(), lambda self, v: None, lambda self: None) # default
- """the numerator of a rational number in lowest terms"""
- real = property(lambda self: object(), lambda self, v: None, lambda self: None) # default
- """the real part of a complex number"""
- python3.
python3.5
2.2.1.2 长整型long:
- python2.*:
跟C语言不同,Python的长整型没有指定位宽,也就是说Python没有限制长整型数值的大小,
但是实际上由于机器内存有限,所以我们使用的长整型数值不可能无限大。
在使用过程中,我们如何区分长整型和整型数值呢?
通常的做法是在数字尾部加上一个大写字母L或小写字母l以表示该整数是长整型的,例如:
a = 9223372036854775808L
注意,自从Python2起,如果发生溢出,Python会自动将整型数据转换为长整型,
所以如今在长整型数据后面不加字母L也不会导致严重后果了。- python3.*
长整型,整型统一归为整型
- python2.
- >>> a=
- >>> a
- >>> a+=
- >>> a
- 9223372036854775808L
- python3.
- >>> a=
- >>> a
- >>> a+=
- >>> a
- 查看
查看
2.2.1.3 布尔bool:
- True 和False
1和0
2.2.1.4 浮点数float:
- Python的浮点数就是数学中的小数,类似C语言中的double。
在运算中,整数与浮点数运算的结果是浮点数
浮点数也就是小数,之所以称为浮点数,是因为按照科学记数法表示时,
一个浮点数的小数点位置是可变的,比如,1.23*109和12.3*108是相等的。
浮点数可以用数学写法,如1.23,3.14,-9.01,等等。但是对于很大或很小的浮点数,
就必须用科学计数法表示,把10用e替代,1.23*109就是1.23e9,或者12.3e8,0.000012
可以写成1.2e-5,等等。
整数和浮点数在计算机内部存储的方式是不同的,整数运算永远是精确的而浮点数运算则可能会有
四舍五入的误差。
2.2.1.5 复数complex:
- 复数由实数部分和虚数部分组成,一般形式为x+yj,其中的x是复数的实数部分,y是复数的虚数部分,这里的x和y都是实数。
注意,虚数部分的字母j大小写都可以,
- >>> 1.3 + 2.5j == 1.3 + 2.5J
- True
2.2.1.6 数字相关内建函数
2.2.2 字符串
- 定义:它是一个有序的字符的集合,用于存储和表示基本的文本信息,‘’或“”或‘’‘ ’‘’中间包含的内容称之为字符串
特性:
1.只能存放一个值
2.不可变
3.按照从左到右的顺序定义字符集合,下标从0开始顺序访问,有序
补充:
1.字符串的单引号和双引号都无法取消特殊字符的含义,如果想让引号内所有字符均取消特殊意义,在引号前面加r,如name=r'l\thf'
2.unicode字符串与r连用必需在r前面,如name=ur'l\thf'
2.2.2.1 字符串创建
‘hello world’
2.2.2.2 字符串常用操作
- 移除空白
分割
长度
索引
切片
2.2.2.3 字符工厂函数str()
- 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'.
- """
- def capitalize(self): # real signature unknown; restored from __doc__
- """
- 首字母变大写
- S.capitalize() -> str
- Return a capitalized version of S, i.e. make the first character
- have upper case and the rest lower case.
- """
- return ""
- def casefold(self): # real signature unknown; restored from __doc__
- """
- S.casefold() -> str
- Return a version of S suitable for caseless comparisons.
- """
- return ""
- def center(self, width, fillchar=None): # real signature unknown; restored from __doc__
- """
- 原来字符居中,不够用空格补全
- S.center(width[, fillchar]) -> str
- Return S centered in a string of length width. Padding is
- done using the specified fill character (default is a space)
- """
- return ""
- def count(self, sub, start=None, end=None): # real signature unknown; restored from __doc__
- """
- 从一个范围内的统计某str出现次数
- S.count(sub[, start[, end]]) -> int
- Return the number of non-overlapping occurrences of substring sub in
- string S[start:end]. Optional arguments start and end are
- interpreted as in slice notation.
- """
- return
- def encode(self, encoding='utf-8', errors='strict'): # real signature unknown; restored from __doc__
- """
- encode(encoding='utf-8',errors='strict')
- 以encoding指定编码格式编码,如果出错默认报一个ValueError,除非errors指定的是
- ignore或replace
- S.encode(encoding='utf-8', errors='strict') -> bytes
- Encode S using the codec registered for encoding. Default encoding
- is 'utf-8'. errors may be given to set a different error
- handling scheme. Default is 'strict' meaning that encoding errors raise
- a UnicodeEncodeError. Other possible values are 'ignore', 'replace' and
- 'xmlcharrefreplace' as well as any other name registered with
- codecs.register_error that can handle UnicodeEncodeErrors.
- """
- return b""
- def endswith(self, suffix, start=None, end=None): # real signature unknown; restored from __doc__
- """
- S.endswith(suffix[, start[, end]]) -> bool
- Return True if S ends with the specified suffix, False otherwise.
- With optional start, test S beginning at that position.
- With optional end, stop comparing S at that position.
- suffix can also be a tuple of strings to try.
- """
- return False
- def expandtabs(self, tabsize=): # real signature unknown; restored from __doc__
- """
- 将字符串中包含的\t转换成tabsize个空格
- S.expandtabs(tabsize=) -> str
- Return a copy of S where all tab characters are expanded using spaces.
- If tabsize is not given, a tab size of characters is assumed.
- """
- return ""
- def find(self, sub, start=None, end=None): # real signature unknown; restored from __doc__
- """
- S.find(sub[, start[, end]]) -> int
- Return the lowest index in S where substring sub is found,
- such that sub is contained within S[start:end]. Optional
- arguments start and end are interpreted as in slice notation.
- Return - on failure.
- """
- return
- def format(self, *args, **kwargs): # known special case of str.format
- """
- 格式化输出
- 三种形式:
- 形式一.
- >>> print('{0}{1}{0}'.format('a','b'))
- aba
- 形式二:(必须一一对应)
- >>> print('{}{}{}'.format('a','b'))
- Traceback (most recent call last):
- File "<input>", line , in <module>
- IndexError: tuple index out of range
- >>> print('{}{}'.format('a','b'))
- ab
- 形式三:
- >>> print('{name} {age}'.format(age=,name='lhf'))
- lhf
- S.format(*args, **kwargs) -> str
- Return a formatted version of S, using substitutions from args and kwargs.
- The substitutions are identified by braces ('{' and '}').
- """
- pass
- def format_map(self, mapping): # real signature unknown; restored from __doc__
- """
- 与format区别
- '{name}'.format(**dict(name='alex'))
- '{name}'.format_map(dict(name='alex'))
- S.format_map(mapping) -> str
- Return a formatted version of S, using substitutions from mapping.
- The substitutions are identified by braces ('{' and '}').
- """
- return ""
- def index(self, sub, start=None, end=None): # real signature unknown; restored from __doc__
- """
- S.index(sub[, start[, end]]) -> int
- Like S.find() but raise ValueError when the substring is not found.
- """
- return
- def isalnum(self): # real signature unknown; restored from __doc__
- """
- 至少一个字符,且都是字母或数字才返回True
- S.isalnum() -> bool
- Return True if all characters in S are alphanumeric
- and there is at least one character in S, False otherwise.
- """
- return False
- def isalpha(self): # real signature unknown; restored from __doc__
- """
- 至少一个字符,且都是字母才返回True
- S.isalpha() -> bool
- Return True if all characters in S are alphabetic
- and there is at least one character in S, False otherwise.
- """
- return False
- def isdecimal(self): # real signature unknown; restored from __doc__
- """
- S.isdecimal() -> bool
- Return True if there are only decimal characters in S,
- False otherwise.
- """
- return False
- def isdigit(self): # real signature unknown; restored from __doc__
- """
- S.isdigit() -> bool
- Return True if all characters in S are digits
- and there is at least one character in S, False otherwise.
- """
- return False
- def isidentifier(self): # real signature unknown; restored from __doc__
- """
- 字符串为关键字返回True
- S.isidentifier() -> bool
- Return True if S is a valid identifier according
- to the language definition.
- Use keyword.iskeyword() to test for reserved identifiers
- such as "def" and "class".
- """
- return False
- def islower(self): # real signature unknown; restored from __doc__
- """
- 至少一个字符,且都是小写字母才返回True
- S.islower() -> bool
- Return True if all cased characters in S are lowercase and there is
- at least one cased character in S, False otherwise.
- """
- return False
- def isnumeric(self): # real signature unknown; restored from __doc__
- """
- S.isnumeric() -> bool
- Return True if there are only numeric characters in S,
- False otherwise.
- """
- return False
- def isprintable(self): # real signature unknown; restored from __doc__
- """
- S.isprintable() -> bool
- Return True if all characters in S are considered
- printable in repr() or S is empty, False otherwise.
- """
- return False
- def isspace(self): # real signature unknown; restored from __doc__
- """
- 至少一个字符,且都是空格才返回True
- S.isspace() -> bool
- Return True if all characters in S are whitespace
- and there is at least one character in S, False otherwise.
- """
- return False
- def istitle(self): # real signature unknown; restored from __doc__
- """
- >>> a='Hello'
- >>> a.istitle()
- True
- >>> a='HellP'
- >>> a.istitle()
- False
- S.istitle() -> bool
- Return True if S is a titlecased string and there is at least one
- character in S, i.e. upper- and titlecase characters may only
- follow uncased characters and lowercase characters only cased ones.
- Return False otherwise.
- """
- return False
- def isupper(self): # real signature unknown; restored from __doc__
- """
- S.isupper() -> bool
- Return True if all cased characters in S are uppercase and there is
- at least one cased character in S, False otherwise.
- """
- return False
- def join(self, iterable): # real signature unknown; restored from __doc__
- """
- #对序列进行操作(分别使用' '与':'作为分隔符)
- >>> seq1 = ['hello','good','boy','doiido']
- >>> print ' '.join(seq1)
- hello good boy doiido
- >>> print ':'.join(seq1)
- hello:good:boy:doiido
- #对字符串进行操作
- >>> seq2 = "hello good boy doiido"
- >>> print ':'.join(seq2)
- h:e:l:l:o: :g:o:o:d: :b:o:y: :d:o:i:i:d:o
- #对元组进行操作
- >>> seq3 = ('hello','good','boy','doiido')
- >>> print ':'.join(seq3)
- hello:good:boy:doiido
- #对字典进行操作
- >>> seq4 = {'hello':,'good':,'boy':,'doiido':}
- >>> print ':'.join(seq4)
- boy:good:doiido:hello
- #合并目录
- >>> import os
- >>> os.path.join('/hello/','good/boy/','doiido')
- '/hello/good/boy/doiido'
- S.join(iterable) -> str
- Return a string which is the concatenation of the strings in the
- iterable. The separator between elements is S.
- """
- return ""
- def ljust(self, width, fillchar=None): # real signature unknown; restored from __doc__
- """
- S.ljust(width[, fillchar]) -> str
- Return S left-justified in a Unicode string of length width. Padding is
- done using the specified fill character (default is a space).
- """
- return ""
- def lower(self): # real signature unknown; restored from __doc__
- """
- S.lower() -> str
- Return a copy of the string S converted to lowercase.
- """
- return ""
- def lstrip(self, chars=None): # real signature unknown; restored from __doc__
- """
- S.lstrip([chars]) -> str
- Return a copy of the string S with leading whitespace removed.
- If chars is given and not None, remove characters in chars instead.
- """
- return ""
- def maketrans(self, *args, **kwargs): # real signature unknown
- """
- Return a translation table usable for str.translate().
- If there is only one argument, it must be a dictionary mapping Unicode
- ordinals (integers) or characters to Unicode ordinals, strings or None.
- Character keys will be then converted to ordinals.
- If there are two arguments, they must be strings of equal length, and
- in the resulting dictionary, each character in x will be mapped to the
- character at the same position in y. If there is a third argument, it
- must be a string, whose characters will be mapped to None in the result.
- """
- pass
- def partition(self, sep): # real signature unknown; restored from __doc__
- """
- 以sep为分割,将S分成head,sep,tail三部分
- S.partition(sep) -> (head, sep, tail)
- Search for the separator sep in S, and return the part before it,
- the separator itself, and the part after it. If the separator is not
- found, return S and two empty strings.
- """
- pass
- def replace(self, old, new, count=None): # real signature unknown; restored from __doc__
- """
- S.replace(old, new[, count]) -> str
- Return a copy of S with all occurrences of substring
- old replaced by new. If the optional argument count is
- given, only the first count occurrences are replaced.
- """
- return ""
- def rfind(self, sub, start=None, end=None): # real signature unknown; restored from __doc__
- """
- S.rfind(sub[, start[, end]]) -> int
- Return the highest index in S where substring sub is found,
- such that sub is contained within S[start:end]. Optional
- arguments start and end are interpreted as in slice notation.
- Return - on failure.
- """
- return
- def rindex(self, sub, start=None, end=None): # real signature unknown; restored from __doc__
- """
- S.rindex(sub[, start[, end]]) -> int
- Like S.rfind() but raise ValueError when the substring is not found.
- """
- return
- def rjust(self, width, fillchar=None): # real signature unknown; restored from __doc__
- """
- S.rjust(width[, fillchar]) -> str
- Return S right-justified in a string of length width. Padding is
- done using the specified fill character (default is a space).
- """
- return ""
- def rpartition(self, sep): # real signature unknown; restored from __doc__
- """
- S.rpartition(sep) -> (head, sep, tail)
- Search for the separator sep in S, starting at the end of S, and return
- the part before it, the separator itself, and the part after it. If the
- separator is not found, return two empty strings and S.
- """
- pass
- def rsplit(self, sep=None, maxsplit=-): # real signature unknown; restored from __doc__
- """
- S.rsplit(sep=None, maxsplit=-) -> list of strings
- Return a list of the words in S, using sep as the
- delimiter string, starting at the end of the string and
- working to the front. If maxsplit is given, at most maxsplit
- splits are done. If sep is not specified, any whitespace string
- is a separator.
- """
- return []
- def rstrip(self, chars=None): # real signature unknown; restored from __doc__
- """
- S.rstrip([chars]) -> str
- Return a copy of the string S with trailing whitespace removed.
- If chars is given and not None, remove characters in chars instead.
- """
- return ""
- def split(self, sep=None, maxsplit=-): # real signature unknown; restored from __doc__
- """
- 以sep为分割,将S切分成列表,与partition的区别在于切分结果不包含sep,
- 如果一个字符串中包含多个sep那么maxsplit为最多切分成几部分
- >>> a='a,b c\nd\te'
- >>> a.split()
- ['a,b', 'c', 'd', 'e']
- S.split(sep=None, maxsplit=-) -> list of strings
- Return a list of the words in S, using sep as the
- delimiter string. If maxsplit is given, at most maxsplit
- splits are done. If sep is not specified or is None, any
- whitespace string is a separator and empty strings are
- removed from the result.
- """
- return []
- def splitlines(self, keepends=None): # real signature unknown; restored from __doc__
- """
- Python splitlines() 按照行('\r', '\r\n', \n')分隔,
- 返回一个包含各行作为元素的列表,如果参数 keepends 为 False,不包含换行符,如 果为 True,则保留换行符。
- >>> x
- 'adsfasdf\nsadf\nasdf\nadf'
- >>> x.splitlines()
- ['adsfasdf', 'sadf', 'asdf', 'adf']
- >>> x.splitlines(True)
- ['adsfasdf\n', 'sadf\n', 'asdf\n', 'adf']
- S.splitlines([keepends]) -> list of strings
- Return a list of the lines in S, breaking at line boundaries.
- Line breaks are not included in the resulting list unless keepends
- is given and true.
- """
- return []
- def startswith(self, prefix, start=None, end=None): # real signature unknown; restored from __doc__
- """
- S.startswith(prefix[, start[, end]]) -> bool
- Return True if S starts with the specified prefix, False otherwise.
- With optional start, test S beginning at that position.
- With optional end, stop comparing S at that position.
- prefix can also be a tuple of strings to try.
- """
- return False
- def strip(self, chars=None): # real signature unknown; restored from __doc__
- """
- S.strip([chars]) -> str
- Return a copy of the string S with leading and trailing
- whitespace removed.
- If chars is given and not None, remove characters in chars instead.
- """
- return ""
- def swapcase(self): # real signature unknown; restored from __doc__
- """
- 大小写反转
- S.swapcase() -> str
- Return a copy of S with uppercase characters converted to lowercase
- and vice versa.
- """
- return ""
- def title(self): # real signature unknown; restored from __doc__
- """
- S.title() -> str
- Return a titlecased version of S, i.e. words start with title case
- characters, all remaining cased characters have lower case.
- """
- return ""
- def translate(self, table): # real signature unknown; restored from __doc__
- """
- table=str.maketrans('alex','big SB')
- a='hello abc'
- print(a.translate(table))
- S.translate(table) -> str
- Return a copy of the string S in which each character has been mapped
- through the given translation table. The table must implement
- lookup/indexing via __getitem__, for instance a dictionary or list,
- mapping Unicode ordinals to Unicode ordinals, strings, or None. If
- this operation raises LookupError, the character is left untouched.
- Characters mapped to None are deleted.
- """
- return ""
- def upper(self): # real signature unknown; restored from __doc__
- """
- S.upper() -> str
- Return a copy of S converted to uppercase.
- """
- return ""
- def zfill(self, width): # real signature unknown; restored from __doc__
- """
- 原来字符右对齐,不够用0补齐
- S.zfill(width) -> str
- Pad a numeric string S with zeros on the left, to fill a field
- of the specified width. The string S is never truncated.
- """
- return ""
- def __add__(self, *args, **kwargs): # real signature unknown
- """ Return self+value. """
- pass
- def __contains__(self, *args, **kwargs): # real signature unknown
- """ Return key in self. """
- pass
- def __eq__(self, *args, **kwargs): # real signature unknown
- """ Return self==value. """
- pass
- def __format__(self, format_spec): # real signature unknown; restored from __doc__
- """
- S.__format__(format_spec) -> str
- Return a formatted version of S as described by format_spec.
- """
- return ""
- def __getattribute__(self, *args, **kwargs): # real signature unknown
- """ Return getattr(self, name). """
- pass
- def __getitem__(self, *args, **kwargs): # real signature unknown
- """ Return self[key]. """
- pass
- def __getnewargs__(self, *args, **kwargs): # real signature unknown
- pass
- def __ge__(self, *args, **kwargs): # real signature unknown
- """ Return self>=value. """
- pass
- def __gt__(self, *args, **kwargs): # real signature unknown
- """ Return self>value. """
- pass
- def __hash__(self, *args, **kwargs): # real signature unknown
- """ Return hash(self). """
- pass
- def __init__(self, value='', encoding=None, errors='strict'): # known special case of str.__init__
- """
- 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'.
- # (copied from class doc)
- """
- pass
- def __iter__(self, *args, **kwargs): # real signature unknown
- """ Implement iter(self). """
- pass
- def __len__(self, *args, **kwargs): # real signature unknown
- """ Return len(self). """
- pass
- def __le__(self, *args, **kwargs): # real signature unknown
- """ Return self<=value. """
- pass
- def __lt__(self, *args, **kwargs): # real signature unknown
- """ Return self<value. """
- pass
- def __mod__(self, *args, **kwargs): # real signature unknown
- """ Return self%value. """
- pass
- def __mul__(self, *args, **kwargs): # real signature unknown
- """ Return self*value.n """
- pass
- @staticmethod # known case of __new__
- def __new__(*args, **kwargs): # real signature unknown
- """ Create and return a new object. See help(type) for accurate signature. """
- pass
- def __ne__(self, *args, **kwargs): # real signature unknown
- """ Return self!=value. """
- pass
- def __repr__(self, *args, **kwargs): # real signature unknown
- """ Return repr(self). """
- pass
- def __rmod__(self, *args, **kwargs): # real signature unknown
- """ Return value%self. """
- pass
- def __rmul__(self, *args, **kwargs): # real signature unknown
- """ Return self*value. """
- pass
- def __sizeof__(self): # real signature unknown; restored from __doc__
- """ S.__sizeof__() -> size of S in memory, in bytes """
- pass
- def __str__(self, *args, **kwargs): # real signature unknown
- """ Return str(self). """
- pass
- 字符串工厂函数
- 字符串工厂函数
字符串工厂函数
- num = "" #unicode
- num.isdigit() # True
- num.isdecimal() # True
- num.isnumeric() # True
- num = "" # 全角
- num.isdigit() # True
- num.isdecimal() # True
- num.isnumeric() # True
- num = b"" # byte
- num.isdigit() # True
- num.isdecimal() # AttributeError 'bytes' object has no attribute 'isdecimal'
- num.isnumeric() # AttributeError 'bytes' object has no attribute 'isnumeric'
- num = "IV" # 罗马数字
- num.isdigit() # True
- num.isdecimal() # False
- num.isnumeric() # True
- num = "四" # 汉字
- num.isdigit() # False
- num.isdecimal() # False
- num.isnumeric() # True
- ===================
- isdigit()
- True: Unicode数字,byte数字(单字节),全角数字(双字节),罗马数字
- False: 汉字数字
- Error: 无
- isdecimal()
- True: Unicode数字,,全角数字(双字节)
- False: 罗马数字,汉字数字
- Error: byte数字(单字节)
- isnumeric()
- True: Unicode数字,全角数字(双字节),罗马数字,汉字数字
- False: 无
- Error: byte数字(单字节)
- ================
- import unicodedata
- unicodedata.digit("") #
- unicodedata.decimal("") #
- unicodedata.numeric("") # 2.0
- unicodedata.digit("") #
- unicodedata.decimal("") #
- unicodedata.numeric("") # 2.0
- unicodedata.digit(b"") # TypeError: must be str, not bytes
- unicodedata.decimal(b"") # TypeError: must be str, not bytes
- unicodedata.numeric(b"") # TypeError: must be str, not bytes
- unicodedata.digit("Ⅷ") # ValueError: not a digit
- unicodedata.decimal("Ⅷ") # ValueError: not a decimal
- unicodedata.numeric("Ⅷ") # 8.0
- unicodedata.digit("四") # ValueError: not a digit
- unicodedata.decimal("四") # ValueError: not a decimal
- unicodedata.numeric("四") # 4.0
- #"〇","零","一","壱","二","弐","三","参","四","五","六","七","八","九","十","廿","卅","卌","百","千","万","万","亿"
- python中str函数isdigit、isdecimal、isnumeric的区别
python中str函数isdigit、isdecimal、isnumeric的区别
2.2.3 列表
- 定义:[]内以逗号分隔,按照索引,存放各种数据类型,每个位置代表一个元素
特性:
1.可存放多个值
2.可修改指定索引位置对应的值,可变
3.按照从左到右的顺序定义列表元素,下标从0开始顺序访问,有序
2.2.3.1 列表创建
- list_test=[’lhf‘,12,'ok']
或
list_test=list('abc')
或
list_test=list([’lhf‘,12,'ok'])
2.2.3.2 列表常用操作
- 索引
切片
追加
删除
长度
切片
循环
包含
2.2.3.3 列表工厂函数list()
- class list(object):
- """
- list() -> new empty list
- list(iterable) -> new list initialized from iterable's items
- """
- def append(self, p_object): # real signature unknown; restored from __doc__
- """ L.append(object) -> None -- append object to end """
- pass
- def clear(self): # real signature unknown; restored from __doc__
- """ L.clear() -> None -- remove all items from L """
- pass
- def copy(self): # real signature unknown; restored from __doc__
- """ L.copy() -> list -- a shallow copy of L """
- return []
- def count(self, value): # real signature unknown; restored from __doc__
- """ L.count(value) -> integer -- return number of occurrences of value """
- return
- def extend(self, iterable): # real signature unknown; restored from __doc__
- """ L.extend(iterable) -> None -- extend list by appending elements from the iterable """
- pass
- def index(self, value, start=None, stop=None): # real signature unknown; restored from __doc__
- """
- L.index(value, [start, [stop]]) -> integer -- return first index of value.
- Raises ValueError if the value is not present.
- """
- return
- def insert(self, index, p_object): # real signature unknown; restored from __doc__
- """ L.insert(index, object) -- insert object before index """
- pass
- def pop(self, index=None): # real signature unknown; restored from __doc__
- """
- L.pop([index]) -> item -- remove and return item at index (default last).
- Raises IndexError if list is empty or index is out of range.
- """
- pass
- def remove(self, value): # real signature unknown; restored from __doc__
- """
- L.remove(value) -> None -- remove first occurrence of value.
- Raises ValueError if the value is not present.
- """
- pass
- def reverse(self): # real signature unknown; restored from __doc__
- """ L.reverse() -- reverse *IN PLACE* """
- pass
- def sort(self, key=None, reverse=False): # real signature unknown; restored from __doc__
- """ L.sort(key=None, reverse=False) -> None -- stable sort *IN PLACE* """
- pass
- def __add__(self, *args, **kwargs): # real signature unknown
- """ Return self+value. """
- pass
- def __contains__(self, *args, **kwargs): # real signature unknown
- """ Return key in self. """
- pass
- def __delitem__(self, *args, **kwargs): # real signature unknown
- """ Delete self[key]. """
- pass
- def __eq__(self, *args, **kwargs): # real signature unknown
- """ Return self==value. """
- pass
- def __getattribute__(self, *args, **kwargs): # real signature unknown
- """ Return getattr(self, name). """
- pass
- def __getitem__(self, y): # real signature unknown; restored from __doc__
- """ x.__getitem__(y) <==> x[y] """
- pass
- def __ge__(self, *args, **kwargs): # real signature unknown
- """ Return self>=value. """
- pass
- def __gt__(self, *args, **kwargs): # real signature unknown
- """ Return self>value. """
- pass
- def __iadd__(self, *args, **kwargs): # real signature unknown
- """ Implement self+=value. """
- pass
- def __imul__(self, *args, **kwargs): # real signature unknown
- """ Implement self*=value. """
- pass
- def __init__(self, seq=()): # known special case of list.__init__
- """
- list() -> new empty list
- list(iterable) -> new list initialized from iterable's items
- # (copied from class doc)
- """
- pass
- def __iter__(self, *args, **kwargs): # real signature unknown
- """ Implement iter(self). """
- pass
- def __len__(self, *args, **kwargs): # real signature unknown
- """ Return len(self). """
- pass
- def __le__(self, *args, **kwargs): # real signature unknown
- """ Return self<=value. """
- pass
- def __lt__(self, *args, **kwargs): # real signature unknown
- """ Return self<value. """
- pass
- def __mul__(self, *args, **kwargs): # real signature unknown
- """ Return self*value.n """
- pass
- @staticmethod # known case of __new__
- def __new__(*args, **kwargs): # real signature unknown
- """ Create and return a new object. See help(type) for accurate signature. """
- pass
- def __ne__(self, *args, **kwargs): # real signature unknown
- """ Return self!=value. """
- pass
- def __repr__(self, *args, **kwargs): # real signature unknown
- """ Return repr(self). """
- pass
- def __reversed__(self): # real signature unknown; restored from __doc__
- """ L.__reversed__() -- return a reverse iterator over the list """
- pass
- def __rmul__(self, *args, **kwargs): # real signature unknown
- """ Return self*value. """
- pass
- def __setitem__(self, *args, **kwargs): # real signature unknown
- """ Set self[key] to value. """
- pass
- def __sizeof__(self): # real signature unknown; restored from __doc__
- """ L.__sizeof__() -- size of L in memory, in bytes """
- pass
- __hash__ = None
- 查看
查看
2.2.4 元组
- 定义:与列表类似,只不过[]改成()
特性:
- 1.可存放多个值
2.不可变
3.按照从左到右的顺序定义元组元素,下标从0开始顺序访问,有序
2.2.4.1 元组创建
- ages = (11, 22, 33, 44, 55)
或
ages = tuple((11, 22, 33, 44, 55))
2.2.4.2 元组常用操作
- 索引
切片
循环
长度
包含
2.2.4.3 元组工厂函数tuple()
2.2.5 字典
- 定义:{key1:value1,key2:value2},key-value结构,key必须可hash
特性:
- 1.可存放多个值
2.可修改指定key对应的值,可变
3.无序
2.2.5.1 字典创建
- person = {"name": "sb", 'age': 18}
或
person = dict(name='sb', age=18)
person = dict({"name": "sb", 'age': 18})
person = dict((['name','sb'],['age',18]))
{}.fromkeys(seq,100) #不指定100默认为None
注意:
- >>> dic={}.fromkeys(['k1','k2'],[])
- >>> dic
- {'k1': [], 'k2': []}
- >>> dic['k1'].append(1)
- >>> dic
- {'k1': [1], 'k2': [1]}
2.2.5.2 字典常用操作
- 索引
新增
删除
键、值、键值对
循环
长度
2.2.5.3 字典工厂函数dict()
2.2.6 集合
- 定义:由不同元素组成的集合,集合中是一组无序排列的可hash值,可以作为字典的key
特性:
1.集合的目的是将不同的值存放到一起,不同的集合间用来做关系运算,无需纠结于集合中单个值
2.2.6.1 集合创建
- {1,2,3,1}
或
定义可变集合set
>>> set_test=set('hello')
>>> set_test
{'l', 'o', 'e', 'h'}
改为不可变集合frozenset
>>> f_set_test=frozenset(set_test)
>>> f_set_test
frozenset({'l', 'e', 'h', 'o'})
2.2.6.2 集合常用操作:关系运算
- in
not in
==
!=
<,<=
>,>=
|,|=:合集
&.&=:交集
-,-=:差集
^,^=:对称差分
2.2.6.3 集合工厂函数set()
- class set(object):
- """
- set() -> new empty set object
- set(iterable) -> new set object
- Build an unordered collection of unique elements.
- """
- def add(self, *args, **kwargs): # real signature unknown
- """
- Add an element to a set.
- This has no effect if the element is already present.
- """
- pass
- def clear(self, *args, **kwargs): # real signature unknown
- """ Remove all elements from this set. """
- pass
- def copy(self, *args, **kwargs): # real signature unknown
- """ Return a shallow copy of a set. """
- pass
- def difference(self, *args, **kwargs): # real signature unknown
- """
- 相当于s1-s2
- Return the difference of two or more sets as a new set.
- (i.e. all elements that are in this set but not the others.)
- """
- pass
- def difference_update(self, *args, **kwargs): # real signature unknown
- """ Remove all elements of another set from this set. """
- pass
- def discard(self, *args, **kwargs): # real signature unknown
- """
- 与remove功能相同,删除元素不存在时不会抛出异常
- Remove an element from a set if it is a member.
- If the element is not a member, do nothing.
- """
- pass
- def intersection(self, *args, **kwargs): # real signature unknown
- """
- 相当于s1&s2
- Return the intersection of two sets as a new set.
- (i.e. all elements that are in both sets.)
- """
- pass
- def intersection_update(self, *args, **kwargs): # real signature unknown
- """ Update a set with the intersection of itself and another. """
- pass
- def isdisjoint(self, *args, **kwargs): # real signature unknown
- """ Return True if two sets have a null intersection. """
- pass
- def issubset(self, *args, **kwargs): # real signature unknown
- """
- 相当于s1<=s2
- Report whether another set contains this set. """
- pass
- def issuperset(self, *args, **kwargs): # real signature unknown
- """
- 相当于s1>=s2
- Report whether this set contains another set. """
- pass
- def pop(self, *args, **kwargs): # real signature unknown
- """
- Remove and return an arbitrary set element.
- Raises KeyError if the set is empty.
- """
- pass
- def remove(self, *args, **kwargs): # real signature unknown
- """
- Remove an element from a set; it must be a member.
- If the element is not a member, raise a KeyError.
- """
- pass
- def symmetric_difference(self, *args, **kwargs): # real signature unknown
- """
- 相当于s1^s2
- Return the symmetric difference of two sets as a new set.
- (i.e. all elements that are in exactly one of the sets.)
- """
- pass
- def symmetric_difference_update(self, *args, **kwargs): # real signature unknown
- """ Update a set with the symmetric difference of itself and another. """
- pass
- def union(self, *args, **kwargs): # real signature unknown
- """
- 相当于s1|s2
- Return the union of sets as a new set.
- (i.e. all elements that are in either set.)
- """
- pass
- def update(self, *args, **kwargs): # real signature unknown
- """ Update a set with the union of itself and others. """
- pass
- def __and__(self, *args, **kwargs): # real signature unknown
- """ Return self&value. """
- pass
- def __contains__(self, y): # real signature unknown; restored from __doc__
- """ x.__contains__(y) <==> y in x. """
- pass
- def __eq__(self, *args, **kwargs): # real signature unknown
- """ Return self==value. """
- pass
- def __getattribute__(self, *args, **kwargs): # real signature unknown
- """ Return getattr(self, name). """
- pass
- def __ge__(self, *args, **kwargs): # real signature unknown
- """ Return self>=value. """
- pass
- def __gt__(self, *args, **kwargs): # real signature unknown
- """ Return self>value. """
- pass
- def __iand__(self, *args, **kwargs): # real signature unknown
- """ Return self&=value. """
- pass
- def __init__(self, seq=()): # known special case of set.__init__
- """
- set() -> new empty set object
- set(iterable) -> new set object
- Build an unordered collection of unique elements.
- # (copied from class doc)
- """
- pass
- def __ior__(self, *args, **kwargs): # real signature unknown
- """ Return self|=value. """
- pass
- def __isub__(self, *args, **kwargs): # real signature unknown
- """ Return self-=value. """
- pass
- def __iter__(self, *args, **kwargs): # real signature unknown
- """ Implement iter(self). """
- pass
- def __ixor__(self, *args, **kwargs): # real signature unknown
- """ Return self^=value. """
- pass
- def __len__(self, *args, **kwargs): # real signature unknown
- """ Return len(self). """
- pass
- def __le__(self, *args, **kwargs): # real signature unknown
- """ Return self<=value. """
- pass
- def __lt__(self, *args, **kwargs): # real signature unknown
- """ Return self<value. """
- pass
- @staticmethod # known case of __new__
- def __new__(*args, **kwargs): # real signature unknown
- """ Create and return a new object. See help(type) for accurate signature. """
- pass
- def __ne__(self, *args, **kwargs): # real signature unknown
- """ Return self!=value. """
- pass
- def __or__(self, *args, **kwargs): # real signature unknown
- """ Return self|value. """
- pass
- def __rand__(self, *args, **kwargs): # real signature unknown
- """ Return value&self. """
- pass
- def __reduce__(self, *args, **kwargs): # real signature unknown
- """ Return state information for pickling. """
- pass
- def __repr__(self, *args, **kwargs): # real signature unknown
- """ Return repr(self). """
- pass
- def __ror__(self, *args, **kwargs): # real signature unknown
- """ Return value|self. """
- pass
- def __rsub__(self, *args, **kwargs): # real signature unknown
- """ Return value-self. """
- pass
- def __rxor__(self, *args, **kwargs): # real signature unknown
- """ Return value^self. """
- pass
- def __sizeof__(self): # real signature unknown; restored from __doc__
- """ S.__sizeof__() -> size of S in memory, in bytes """
- pass
- def __sub__(self, *args, **kwargs): # real signature unknown
- """ Return self-value. """
- pass
- def __xor__(self, *args, **kwargs): # real signature unknown
- """ Return self^value. """
- pass
- __hash__ = None
- 查看
- 查看
查看
2.2.7 bytes类型
定义:存8bit整数,数据基于网络传输或内存变量存储到硬盘时需要转成bytes类型,字符串前置b代表为bytes类型
- >>> x
- 'hello sb'
- >>> x.encode('gb2312')
- b'hello sb'
2.2.8 数据类型转换内置函数汇总
注:真对acsii表unichr在python2.7中比chr的范围更大,python3.*中chr内置了unichar
三.运算符
2、比较运算:
3、赋值运算:
4、位运算:
注: ~ 举例: ~5 = -6 解释: 将二进制数+1之后乘以-1,即~x = -(x+1),-(101 + 1) = -110
按位反转仅能用在数字前面。所以写成 3+~5 可以得到结果-3,写成3~5就出错了
5、逻辑运算:
and注解:
- 在Python 中,and 和 or 执行布尔逻辑演算,如你所期待的一样,但是它们并不返回布尔值;而是,返回它们实际进行比较的值之一。
- 在布尔上下文中从左到右演算表达式的值,如果布尔上下文中的所有值都为真,那么 and 返回最后一个值。
- 如果布尔上下文中的某个值为假,则 and 返回第一个假值
or注解:
- 使用 or 时,在布尔上下文中从左到右演算值,就像 and 一样。如果有一个值为真,or 立刻返回该值
- 如果所有的值都为假,or 返回最后一个假值
- 注意 or 在布尔上下文中会一直进行表达式演算直到找到第一个真值,然后就会忽略剩余的比较值
and-or结合使用:
- 结合了前面的两种语法,推理即可。
- 为加强程序可读性,最好与括号连用,例如:
- (1 and 'x') or 'y'
6、成员运算:
7.身份运算
8.运算符优先级:自上而下,优先级从高到低
四.标准数据类型特性总结
按存值个数区分
标量/原子类型 | 数字,字符串 |
容器类型 | 列表,元组,字典 |
按可变不可变区分
可变 | 列表,字典 |
不可变 | 数字,字符串,元组 |
按访问顺序区分
直接访问 | 数字 |
顺序访问(序列类型) | 字符串,列表,元组 |
key值访问(映射类型) | 字典 |
第二篇.1、python基础之数据类型与变量的更多相关文章
- 第三篇:python基础之数据类型与变量
阅读目录 一.变量 二.数据类型 2.1 什么是数据类型及数据类型分类 2.2 标准数据类型: 2.2.1 数字 2.2.1.1 整型: 2.2.1.2 长整型long: 2.2.1.3 布尔bool ...
- Python成长之路【第二篇】Python基础之数据类型
阅读目录 简介 1 什么是数据? x=10,10是我们要存储的数据 2 为何数据要分不同的类型 数据是用来表示状态的,不同的状态就应该用不同的类型的数据去表示 3 数据类型 数字(整形,长整形,浮点型 ...
- 第二章:python基础,数据类型
"""第二章:python基础,数据类型2.1 变量及身份运算补充2.2 二进制数2.3 字符编码每8位所占的空间位一个比特,这是计算机中最小的表示单位.每8个比特组成一 ...
- python开发第二篇 :python基础
python基础a.Python基础 -基础1. 第一句python -python后缀名可以任意? -导入模块时如果不是.py文件,以后的文件后缀名是.py.2.两种 ...
- Python之路【第二篇】:Python基础
Python基础 对于Python,一切事物都是对象,对象基于类创建 所以,以下这些值都时对象:"zhurui".22.['北京','上海','深圳'],并且是根据不同的类生成的对 ...
- 第二篇:python基础之文件读写
python基础之文件读写 python基础之文件读写 本节内容 os模块中文件以及目录的一些方法 文件的操作 目录的操作 1.os模块中文件以及目录的一些方法 python操作文件以及目录可以使 ...
- 第二篇:python基础之核心风格
阅读目录 一.语句和语法 二.变量定义与赋值 三.内存管理 内存管理: 引用计数: 简单例子 四.python对象 五.标识符 六.专用下划线标识符 七.编写模块基本风格 八.示范 一.语句和语法 # ...
- python学习第三天:python基础(数据类型和变量)
注释 以 # 开头的语句是注释,如,注释不会被编译运行: 格式 当语句以冒号:结尾时,缩进的语句视为代码块.按照约定俗成的管理,应该始终坚持使用4个空格的缩进(在文本编辑器中,需要设置把Tab自动转 ...
- Python基础之数据类型和变量
数据类型 计算机顾名思义就是可以做数学机器,可以处理各种数值,计算机还能处理文本.图形.音频.视频.网页等各种各样的数据,不同的数据是需要定义不同的数据类型的,在Python中,能够直接处理的数据 ...
随机推荐
- javascript控制流程语句
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...
- WPF/ASP.NET:几个Prism中的术语
Prism 棱镜 Bootstrapper 启动器 dependency injection 依赖注入 regions 区域 navigation 导航 shell 壳
- Ubuntu16.04源
vim /etc/apt/sources.list # 阿里云deb cdrom:[Ubuntu 16.04 LTS _Xenial Xerus_ - Release amd64 (20160420. ...
- jmeter beanShell修改http请求参数
jmeter beanShell修改http请求参数 在使用jmeter进行测试时,需要对上一步响应的明文参数,如userName='tom' token='%sdf%sdkdfj'之类的参数,加密一 ...
- zabbix(2)使用指南
一.邮件报警(一个客户端安装server,agent) 管理->报警媒介类型->email 管理->用户->Admin->报警媒介 配置->动作->Repor ...
- spring boot系列(一)spring boot 初识
什么是spring boot Spring Boot是由Pivotal团队提供的全新框架,其设计目的是用来简化新Spring应用的初始搭建以及开发过程.该框架使用了特定的方式来进行配置,从而使开发人员 ...
- [iOS]UIWebView返回和NSURLErrorDomain-999
1.UIWebView实现返回不崩溃: -(BOOL)webView:(UIWebView *)webView shouldStartLoadWithRequest:(NSURLRequest *)r ...
- shutil使用
1.用shutil移动文件, import shutil shutil.move('/root/test.yaml','/home/') shutil.move('/root/k8s.py','/ho ...
- [转帖]深入浅出全面解析RDMA
深入浅出全面解析RDMA 置顶 2018年06月04日 11:36:54 MasterT-J 阅读数 17193更多 所属专栏: RDMA RDMA(RemoteDirect Memory Acc ...
- python装饰器的原理
装饰器的原理就是利用<闭包函数>来实现,闭包函数的原理就是包含内层函数的return和外层环境变量: