美文网首页
数据类型-补充

数据类型-补充

作者: lei_de | 来源:发表于2018-10-23 04:53 被阅读0次

    数字(Number)

    变量在使用前必须先"定义"(即赋予变量一个值),否则会出现错误:

    >>> n   # 尝试访问一个未定义的变量
    Traceback (most recent call last):
      File "<stdin>", line 1, in <module>
    NameError: name 'n' is not defined
    

    随机函数

    Python包含以下常用随机数函数:

    函数 描述
    choice(seq) 从序列的元素中随机挑选一个元素,比如random.choice(range(10)),从0到9中随机挑选一个整数。
    random() 随机生成下一个实数,它在[0,1)范围内。

    string

    我们可以使用引号('或")来创建字符串。

    >>>print ("我叫 %s 今年 %d 岁!" % ('小明', 10))
    我叫 小明 今年 10 岁!
    

    python三引号允许一个字符串跨多行,字符串中可以包含换行符、制表符以及其他特殊字符。

    para_str = """这是一个多行字符串的实例
    多行字符串可以使用制表符
    TAB ( \t )。
    也可以使用换行符 [ \n ]。
    """
    print (para_str)
    

    输出

    这是一个多行字符串的实例
    多行字符串可以使用制表符
    TAB (    )。
    也可以使用换行符 [ 
     ]。
    

    List

    你可以对列表的数据项进行修改或更新,你也可以使用append()方法来添加列表项

    list = ['Google', 'Runoob', 1997, 2000]
     
    print ("第三个元素为 : ", list[2])
    list[2] = 2001
    print ("更新后的第三个元素为 : ", list[2])
    
    del list[2]#使用 del 语句来删除列表的的元素
    print ("删除第三个元素 : ", list)
    
    表达式 结果 描述
    len([1,2,3]) 3 长度
    [1,2,3]+[4,5,6] [1,2,3,4,5,6] 组合
    ['Hi!'] * 4 ['Hi!', 'Hi!', 'Hi!', 'Hi!'] 重复
    3 in [1,2,3] True 元素是否存在于列表中
    for x in [1,2,3]:print(x,end="") 1 2 3 迭代

    嵌套列表

    >>>a = ['a', 'b', 'c']
    >>> n = [1, 2, 3]
    >>> x = [a, n]
    >>> x
    [['a', 'b', 'c'], [1, 2, 3]]
    >>> x[0]
    ['a', 'b', 'c']
    >>> x[0][1]
    'b'
    

    常用函数

    函数 描述
    len(list) 列表元素个数
    max(list) 返回列表元素最大值
    min(list) 返回列表元素最小值
    list(seq) 将元组转换为列表

    Tuple

    Python 的元组与列表类似,不同之处在于元组的元素不能修改
    元组使用小括号,列表使用方括号。

    >>> tup1 = ('Google', 'Runoob', 1997, 2000);
    >>> tup2 = (1, 2, 3, 4, 5 );
    >>> tup3 = ();#创建空元组
    

    元组中的元素值是不允许修改的,但我们可以对元组进行连接组合

    tup1 = (12, 34.56);
    tup2 = ('abc', 'xyz')
     
    # 以下修改元组元素操作是非法的。
    # tup1[0] = 100
     
    # 创建一个新的元组
    tup3 = tup1 + tup2;
    print (tup3)
    

    输出

    (12, 34.56, 'abc', 'xyz')
    

    元组中的元素值是不允许删除的,但我们可以使用del语句来删除整个元组,

     >>> tup = ('Google', 'Runoob',1994,2000)
     >>>  print(tup)
    ('Google', 'Runoob', 1994, 2000)
     >>> del tup
     >>> print('删除后的元组 tup:')
    删除后的元组 tup:
     >>> print(tup)
    Traceback (most recent call last):
      File "<input>", line 1, in <module>
    NameError: name 'tup' is not defined
    

    与字符串一样,元组之间可以使用 + 号和 * 号进行运算。这就意味着他们可以组合和复制,运算后会生成一个新的元组。
    运算方法和List相同

    Dictionary

    字典是另一种可变容器模型,且可存储任意类型对象。
    字典的每个键值(key=>value)对用冒号(:)分割,每个对之间用逗号(,)分割,整个字典包括在花括号({})中 ,格式如下所示:
    d = {key1 : value1, key2 : value2 }
    如果用字典里没有的键访问数据,会输出错误如下:

    dict = {'Name': 'Runoob', 'Age': 7, 'Class': 'First'};
    print ("dict['Alice']: ", dict['Alice'])
    
    Traceback (most recent call last):
      File "<input>", line 1, in <module>
    KeyError: 'Alice'
    
    dict = {'Name': 'Runoob', 'Age': 7, 'Class': 'First'}
     
    dict['Age'] = 8;   # 更新 Age
    dict['School'] = "菜鸟教程"  # 添加信息
    del dict['Name'] # 删除键 'Name'
    dict.clear()     # 清空字典
    del dict         # 删除字典
    

    字典键的特性

    字典值可以是任何的 python 对象,既可以是标准的对象,也可以是用户定义的,但键不行。
    两个重要的点需要记住:
    1)不允许同一个键出现两次。创建时如果同一个键被赋值两次,后一个值会被记住,

    dict = {'Name': 'Runoob', 'Age': 7, 'Name': '小菜鸟'}
     print ("dict['Name']: ", dict['Name'])
    

    输出:

    dict['Name']:  小菜鸟
    

    2)键必须不可变,所以可以用数字,字符串或元组充当,而用列表就不行,

    dict = {['Name']: 'Runoob', 'Age': 7}
    print ("dict['Name']: ", dict['Name'])
    

    报错:

    Traceback (most recent call last):
      File "<input>", line 1, in <module>
    TypeError: unhashable type: 'list'
    

    set

    集合(set)是一个无序不重复元素序列。
    可以使用大括号{ }或者set()函数创建集合,注意:创建一个空集合必须用 set()而不是{ },因为{ }是用来创建一个空字典。
    创建格式
    parame = {value01,value02,...}或者set(value)

    set 的基本操作

    1. 添加元素
      s.add(x)s.update(x)
    >>>thisset = set(("Google", "Runoob", "Taobao"))
    >>> thisset.add("Facebook")
    >>> print(thisset)
    {'Taobao', 'Facebook', 'Google', 'Runoob'}
    
    >>>thisset = set(("Google", "Runoob", "Taobao"))
    >>> thisset.update({1,3})
    >>> print(thisset)
    {1, 3, 'Google', 'Taobao', 'Runoob'}
    
    1. 移除元素
      s.remove(x) 将元素 x 从集合 s 中移除,如果元素不存在,则会发生错误。
      s.discard(x)移除集合中的元素,如果元素不存在,不会发生错误。
    2. 计算集合元素个数
      len(x)
    3. 清空集合
      s.clear
    4. 判断元素是否在集合中存在
      x in s

    来源:菜鸟教程

    相关文章

      网友评论

          本文标题:数据类型-补充

          本文链接:https://www.haomeiwen.com/subject/jefozftx.html