美文网首页
note1--数据类型

note1--数据类型

作者: 幸福幸福幸福 | 来源:发表于2017-06-21 22:43 被阅读8次
    • 字符串
      如果字符串里面有很多字符都需要转义,就需要加很多\,为了简化,Python还允许用r''表示''内部的字符串默认不转义print(r'\"')
      >>> a = 'abc'
      >>> a.replace('a', 'A')
      'Abc'
      >>> a
      'abc'
    • 整数
    • 浮点数
      浮点数也就是小数,之所以称为浮点数,是因为按照科学记数法表示时,一个浮点数的小数点位置是可变的,比如,1.23x109和12.3x108是完全相等的。浮点数可以用数学写法,如1.23,3.14,-9.01,等等。但是对于很大或很小的浮点数,就必须用科学计数法表示,把10用e替代,1.23x109就是1.23e9,或者12.3e8,0.000012可以写成1.2e-5,等等。
      整数和浮点数在计算机内部存储的方式是不同的,整数运算永远是精确的(除法难道也是精确的?是的!),而浮点数运算则可能会有四舍五入的误差。
    • 布尔值
      True False
    • 运算符, and or not
      True and False //false
      True or False // True
      not True // =False
    • 空值 None
      空值是Python里一个特殊的值,用None表示。None不能理解为0,因为0是有意义的,而None是一个特殊的空值。
    • 列表 list(很像js的数组)
      >>> classmates = ['Michael', 'Bob', 'Tracy']
      >>> classmates
      ['Michael', 'Bob', 'Tracy']
      变量classmates就是一个list。用len()函数可以获得list的元素个数即长度
      >>> len(classmates) //区别与js
      3
      通过索引访问元素:
      >>> classmates[1]
      'Bob'
      如果索引超出范围会报错,比如
      >>> classmates[3]
      Traceback (most recent call last):
      File "<stdin>", line 1, in <module>
      IndexError: list index out of range
      如果索引为负数,比如-1,此时索引相当于len(classmates)-1,比如:
      >>> classmates[-1]
      'Tracy'
      list的一些增删改查操作
      • 在末尾追加元素:
        >>> classmates.append('Adam')
        >>> classmates
        ['Michael', 'Bob', 'Tracy', 'Adam']
      • 在指定位置插入元素,比如在索引号为1的位置
        >>> classmates.insert(1, 'Jack')
        >>> classmates
        ['Michael', 'Jack', 'Bob', 'Tracy', 'Adam']
      • 删除末尾元素
        >>> classmates.pop()
        'Adam'
        >>> classmates
        ['Michael', 'Jack', 'Bob', 'Tracy']
      • 删除指定位置元素
        >>> classmates.pop(1)
        'Jack'
        >>> classmates
        ['Michael', 'Bob', 'Tracy']
      • 替换某个元素,直接赋值就行了
        >>> classmates[1] = 'Sarah'
        >>> classmates
        ['Michael', 'Sarah', 'Tracy']
    • 元组:tuple
      tuple和list非常类似,但是tuple一旦初始化就不能修改
      >>> classmates = ('Michael', 'Bob', 'Tracy')
      现在,classmates这个tuple不能变了,它也没有append(),insert()这样的方法。其他获取元素的方法和list是一样的,你可以正常地使用classmates[0],classmates[-1],但不能赋值成另外的元素。
      所以我们在定义一个tuple的时候就必须确定他的元素
      另外当我们定义一个只有一个数值元素的tuple时,这个()会被认为是运算符()
      >>> t = (1)
      >>> t
      1
      Python对这种情况有一个处理办法,就是在显示只有1个元素的tuple时,也会加一个逗号。
      另外tuple元组内元素的不可改,是针对基本变量类型的,如果是引用类型,我们可以修改引用类型内的值,但是不能修改引用使他指向新的值
    • dict(相似与js中的对象)
      >>> d = {'Michael': 95, 'Bob': 75, 'Tracy': 85}
      >>> d['Michael']
      95
      如果key不存在就会报错
      >>> d['Thomas']
      Traceback (most recent call last):
      File "<stdin>", line 1, in <module>
      KeyError: 'Thomas'
      判断dict内是否有某个属性:
      >>> 'Thomas' in d
      False
      或者通过dict提供的get方法,如果key不存在,可以返回None,或者自己指定的value:
      >>> d.get('Thomas')
      >>> d.get('Thomas', -1)
      -1
      要删除一个key,用pop(key)方法,对应的value也会从dict中删除
      >>> d.pop('Bob')
      75
      >>> d
      {'Michael': 95, 'Tracy': 85}
    • set
      set和dict类似,也是一组key的集合,但不存储value。由于key不能重复,所以,在set中,没有重复的key。
      要创建一个set,需要提供一个list作为输入集合:
      >>> s = set([1, 2, 3])
      >>> s
      {1, 2, 3}
      重复元素在set中自动被过滤:
      >>> s = set([1, 1, 2, 2, 3, 3])
      >>> s
      {1, 2, 3}
      通过add(key)方法可以添加元素到set中,可以重复添加,但不会有效果
      通过remove(key)方法可以删除元素
      >>> s.add(4)
      >>> s
      {1, 2, 3, 4}
      >>> s.add(4)
      >>> s
      {1, 2, 3, 4}
      >>> s.remove(4)
      >>> s
      {1, 2, 3}
      set可以看成数学意义上的无序和无重复元素的集合,因此,两个set可以做数学意义上的交集、并集等操作:
      >>> s1 = set([1, 2, 3])
      >>> s2 = set([2, 3, 4])
      >>> s1 & s2
      {2, 3}
      >>> s1 | s2
      {1, 2, 3, 4}

    相关文章

      网友评论

          本文标题:note1--数据类型

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