• Python学习笔记【第四篇】:基本数据类型


    变量:处理数据的状态

      变量名 = 状态值 类型

    python中有以下基本数据类型:

      1:整形

      2:字符串类型

      3:Bool类型

      4:列表

      5:元祖(不可变)

      6:字典(无序)

      7:集合 (无序、不重复)

    一、整形 int

    # 定义整形
    a = 10
    

      

    整形的基本方法:

     
        def bit_length(self): 
            """ 返回表示该数字的时占用的最少位数 """
     
        def conjugate(self, *args, **kwargs): # real signature unknown
            """ 返回该复数的共轭复数 """
      
        def __abs__(self):
            """ 返回绝对值 """
       
        def __cmp__(self, y): 
            """ 比较两个数大小 """
    
        def __coerce__(self, y):
            """ 强制生成一个元组 """ 
           
        def __divmod__(self, y): 
            """ 相除,得到商和余数组成的元组 """ 
        
        def __float__(self): 
            """ 转换为浮点类型 """ 
       
        def __getnewargs__(self, *args, **kwargs): # real signature unknown
            """ 内部调用 __new__方法或创建对象时传入参数使用 """ 
    
        def __hash__(self): 
            """如果对象object为哈希表类型,返回对象object的哈希值。哈希值为整数。在字典查找中,哈希值用于快速比较字典的键。两个数值如果相等,则哈希值也相等。"""
       
        def __hex__(self): 
            """ 返回当前数的 十六进制 表示 """ 
    
        def __index__(self): 
            """ 用于切片,数字无意义 """
         
        def __init__(self, x, base=10): # known special case of int.__init__
            """ 构造方法,执行 x = 123 或 x = int(10) 时,自动调用,暂时忽略 """ 
    
        def __int__(self): 
            """ 转换为整数 """ 
    
        def __long__(self): 
            """ 转换为长整数 """ 
    
        def __oct__(self): 
            """ 返回改值的 八进制 表示 """ 
    
        def __pow__(self, y, z=None): 
            """ 幂,次方 """  
    		
        def __str__(self): 
            """转换为人阅读的形式,如果没有适于人阅读的解释形式的话,则返回解释器课阅读的形式"""
      
        def __trunc__(self, *args, **kwargs): 
            """ 返回数值被截取为整形的值,在整形中无意义 """
    

     

    二、字符串 string 

    # 定义字符串方式
    str = "hello world"
    

      字符串常用方法:

     
        def capitalize(self):  
            """ 首字母变大写 """
     
        def center(self, width, fillchar=None):  
            """ 内容居中,width:总长度;fillchar:空白处填充内容,默认无 """
      
        def count(self, sub, start=None, end=None):  
            """ 子序列个数 """
        
        def decode(self, encoding=None, errors=None):  
            """ 解码 """
         
        def encode(self, encoding=None, errors=None):  
            """ 编码,针对unicode """
          
        def endswith(self, suffix, start=None, end=None):  
            """ 是否以 xxx 结束 """
         
        def expandtabs(self, tabsize=None):  
            """ 将tab转换成空格,默认一个tab转换成8个空格 """
     
        def find(self, sub, start=None, end=None):  
            """ 寻找子序列位置,如果没找到,返回 -1 """
        
        def format(*args, **kwargs): # known special case of str.format
            """ 字符串格式化,动态参数,将函数式编程时细说 """
     
        def index(self, sub, start=None, end=None):  
            """ 子序列位置,如果没找到,报错 """
     
        def isalnum(self):  
            """ 是否是字母和数字 """
          
        def isalpha(self):  
            """ 是否是字母 """
           
        def isdigit(self):  
            """ 是否是数字 """
          
        def islower(self):  
            """ 是否小写 """
       
        def join(self, iterable):  
            """ 字符串之间以什么连接 """
    
        def ljust(self, width, fillchar=None):  
            """ 内容左对齐,右侧填充 """
    
        def lower(self):  
            """ 变小写 """
    
        def lstrip(self, chars=None):  
            """ 移除左侧空白 """
            
        def partition(self, sep):  
            """ 分割,前,中,后三部分 包含分隔符"""
    
        def replace(self, old, new, count=None):  
            """ 替换 """
       
        def rsplit(self, sep=None, maxsplit=None):  
         	"""从右边分割"""
    
        def rstrip(self, chars=None):  
            """去除右边空格"""
         
        def split(self, sep=None, maxsplit=None):  
            """ 分割, maxsplit最多分割几次 """
           
        def splitlines(self, keepends=False):  
            """ 根据换行分割 """
       
        def startswith(self, prefix, start=None, end=None):  
            """ 是否起始 """
     
        def strip(self, chars=None):  
            """ 移除两段空白 """
     
        def swapcase(self):  
            """ 大写变小写,小写变大写 """
           
        def translate(self, table, deletechars=None):  
            """
            转换,需要先做一个对应表,最后一个表示删除字符集合
            """
     
        def upper(self):  
            """ 转小写"""
    
        def zfill(self, width):  
            """方法返回指定长度的字符串,原字符串右对齐,前面填充0。"""
    

     

    三、布尔值 Bool

      真或假
      1 或 0
    # 定义Bool类型方式
    b = True
    b = False
    

      

    四、列表 list

    # 定义列表的方式
    li = [0, 1, 2, 3]
    # 或者
    li = list()
    

      列表常用方法

     
        def append(self, p_object): # real signature unknown; restored from __doc__
            """ 追加元素 """
           
        def count(self, value): # real signature unknown; restored from __doc__
            """ 统计列表元素个数 """ 
    
        def extend(self, iterable): # real signature unknown; restored from __doc__
            """ 合并集合 """
           
        def index(self, value, start=None, stop=None): # real signature unknown; restored from __doc__
            """ 返回指定的值索引 """ 
    
        def insert(self, index, p_object): # real signature unknown; restored from __doc__
            """ 在指定的索引处插入 """
        
        def pop(self, index=None): # real signature unknown; restored from __doc__
            """ 随机删除 """ 
    
        def remove(self, value): # real signature unknown; restored from __doc__
            """ 移除 """
           
        def reverse(self): # real signature unknown; restored from __doc__
            """ 反转输出 """
            pass
    
        def sort(self, cmp=None, key=None, reverse=False): # real signature unknown; restored from __doc__
            """ 按顺序从小到大输出 """
      
        def __len__(self): # real signature unknown; restored from __doc__
            """ 返回列表长度 """
         
    
        def __reversed__(self): # real signature unknown; restored from __doc__
            """ 反转输出 """
     
        def __setitem__(self, i, y): # real signature unknown; restored from __doc__
     
    

      

    五、元祖 tuple 

    # 定义元祖方式
    t = (1,2,)
    # 或者
    t = tuple()
    

     元祖常用方法

        def count(self, value): # real signature unknown; restored from __doc__
     
        def index(self, value, start=None, stop=None): # real signature unknown; restored from __doc__
     
        def __add__(self, y): # real signature unknown; restored from __doc__
     
        def __contains__(self, y): # real signature unknown; restored from __doc__
     
        def __len__(self): # real signature unknown; restored from __doc__
       

      

    六、字典 dict

    # 定义字典方式
    d = {'张三':19,'李四':20}
    # 或者
    d = dict()
    

      字典常用方法

     
        def clear(self): # real signature unknown; restored from __doc__
            """ 清除内容 """
     
        def copy(self): # real signature unknown; restored from __doc__
            """ 浅拷贝 """
     
        @staticmethod # known case
        def fromkeys(S, v=None): # real signature unknown; restored from __doc__
            """   """
     
        def get(self, k, d=None): # real signature unknown; restored from __doc__
            """ 根据key获取值,d是默认值 """
     
        def has_key(self, k): # real signature unknown; restored from __doc__
            """ 是否有key """
      
        def items(self): # real signature unknown; restored from __doc__
            """ 所有项的列表形式 """
     
        def iteritems(self): # real signature unknown; restored from __doc__
            """ 项可迭代 """
     
        def iterkeys(self): # real signature unknown; restored from __doc__
            """ key可迭代 """
     
        def itervalues(self): # real signature unknown; restored from __doc__
            """ value可迭代 """
     
        def keys(self): # real signature unknown; restored from __doc__
            """ 所有的key列表 """
     
        def pop(self, k, d=None): # real signature unknown; restored from __doc__
            """ 获取并在字典中移除 """
     
        def popitem(self): # real signature unknown; restored from __doc__
            """ 获取并在字典中移除 """
     
        def setdefault(self, k, d=None): # real signature unknown; restored from __doc__
            """ 如果key不存在,则创建,如果存在,则返回已存在的值且不修改 """
     
        def update(self, E=None, **F): # known special case of dict.update
            """ 更新  """
     
        def values(self): # real signature unknown; restored from __doc__
            """ 所有的值 """
     
        def viewitems(self): # real signature unknown; restored from __doc__
            """ 所有项,只是将内容保存至view对象中 """
     
        def viewkeys(self): # real signature unknown; restored from __doc__
            """ D.viewkeys() -> a set-like object providing a view on D's keys """
     
        def viewvalues(self): # real signature unknown; restored from __doc__
            """ D.viewvalues() -> an object providing a view on D's values """
      
        def __contains__(self, k): # real signature unknown; restored from __doc__
     
        def __delitem__(self, y): # real signature unknown; restored from __doc__
    
    

     七、集合 set

       set集合,是一个无序且不重复的元素集合

       集合常用方法

     
        def add(self, *args, **kwargs): # real signature unknown
            """ 添加元素 """ 
     
        def clear(self, *args, **kwargs): # real signature unknown
            """ 清除内容""" 
    		
        def copy(self, *args, **kwargs): # real signature unknown
            """ 浅拷贝  """ 
     
        def difference(self, *args, **kwargs): # real signature unknown
            """ A中存在,B中不存在 """ 
     
        def difference_update(self, *args, **kwargs): # real signature unknown
            """ 从当前集合中删除和B中相同的元素""" 
     
        def discard(self, *args, **kwargs): # real signature unknown
            """ 移除指定元素,不存在不保错  """ 
     
        def intersection(self, *args, **kwargs): # real signature unknown
            """  交集  """ 
    		
        def intersection_update(self, *args, **kwargs): # real signature unknown
            """ 取交集并更更新到A中 """
      
        def isdisjoint(self, *args, **kwargs): # real signature unknown
            """ 如果没有交集,返回True,否则返回False"""
     
        def issubset(self, *args, **kwargs): # real signature unknown
            """  是否是子序列"""
      
        def issuperset(self, *args, **kwargs): # real signature unknown
            """  是否是父序列"""
        
        def pop(self, *args, **kwargs): # real signature unknown
            """ 移除元素 """ 
     
        def remove(self, *args, **kwargs): # real signature unknown
            """  移除指定元素,不存在保错  """ 
     
        def symmetric_difference(self, *args, **kwargs): # real signature unknown
            """ 对称差集 """ 
     
        def symmetric_difference_update(self, *args, **kwargs): # real signature unknown
            """  对称差集,并更新到a中 """
        
        def union(self, *args, **kwargs): # real signature unknown
            """   并集  """
     
        def update(self, *args, **kwargs): # real signature unknown
            """  更新 """
      

      集合的交并差集

    # 列表
    li_one = [1, 2, 3, 4]
    li_two = [1, 4, 5, 6]
    
    # 列表转为set集合
    set_one = set(li_one)
    set_two = set(li_two)
    
    # 求交集(两个集合公共的)
    print("intersection方法:", set_one.intersection(set_two))
    print("&符号:", set_one & set_two)
    
    # 求并集(两个集合合并去重)
    print("union方法:", set_one.union(set_two))
    print("|符号:", set_one | set_two)
    
    # 求差集(第一个集合减去第二个集合去除共有的剩下自己的和他有的)
    print("difference方法:", set_one.difference(set_two))
    print("-符号:", set_one - set_two)
    

      结果:

    引用

    在python中,值是靠引用来传递来的。

    我们可以用id()来判断两个变量是否为同一个值的引用。 我们可以将id值理解为那块内存的地址标示。

    >>> a = 1
    >>> b = a
    >>> id(a) 
    13033816
    >>> id(b)   # 注意两个变量的id值相同
    13033816
    >>> a = 2
    >>> id(a)   # 注意a的id值已经变了
    13033792
    >>> id(b)   # b的id值依旧
    13033816
    >>> a = [1, 2]
    >>> b = a
    >>> id(a)
    139935018544808
    >>> id(b)
    139935018544808
    >>> a.append(3)
    >>> a
    [1, 2, 3]
    >>> id(a)
    139935018544808
    >>> id(b)       # 注意a与b始终指向同一个地址
    139935018544808
    

      

    切片

    切片是指对操作的对象截取其中一部分的操作。字符串、列表、元组都支持切片操作。

    切片的语法:[起始:结束:步长]

    注意:选取的区间属于左闭右开型,即从"起始"位开始,到"结束"位的前一位结束(不包含结束位本身)。

    我们以字符串为例讲解。

    如果取出一部分,则可以在中括号[]中,使用:

        name = 'abcdef'
    
         print(name[0:3]) # 取 下标0~2 的字符
    

      

    可迭代对象:能被for 循环的就是可迭代对象

    分类

      可变:列表、字典

      不可变:字符串、int 、元祖、Bool

      注意:如何查看当前类型是否可变——通过id()方法查看,如果第一次和第二次值不一样说明当前类型是不可变类型

      直接访问:数字   

      访问顺序:可以通过索引和下标访问

          字符串、列表、元祖(有序)

      映射:字典(无序的)

      容器:列表、元祖、字典 

  • 相关阅读:
    每日一博文
    用flash builder创建手机项目以及发布app需要注意的细节
    用xml配置加载cs中为ActionScript导出的类
    cs里面层,帧的处理方法
    一个项目要被自己加载的swf的项目调用方法
    App调用Android设备本地相机拍照并保存到本地相册
    让SWF文件从原始保存位置拿出来到任意位置都可以播放的设置
    记事
    一个主项目调用被加载的小游戏SWF项目的方法
    从一个App退出,关闭app
  • 原文地址:https://www.cnblogs.com/wendj/p/9149477.html
Copyright © 2020-2023  润新知