Learning Python Chapter 4 Python对象类型介绍

数字(number)

  • 无上限,不像C一样有最大值,python中的数字类型可以无限大,只要你的电脑能算的出来

字符串(string)

  • 属于sequence系列,string可以看作单一字符string的sequence
  • string是不可变的(immutable),因此一旦创建之后就不能再变动了,但是可以通过整体再次赋值来改变其内容
  • 和array类似,也可以通过name[index]的方式来获取单一string元素,且index可以是负值
  • slicing可以成块地获取string中的元素,是sequence operation
  • 首尾加三个引号可以进行多行string输入
  • string两端单双引号皆可,一般用单引号
    类型特定的函数:find, replace, split, upper, rstrip, isalpha等

列表(List)

  • 属于sequence系列,因此支持所有的sequence operation
  • 类似于C的array,但是没有固定的大小限制,每个元素也不限其类型,虽然如此,不能直接引用超出现有上限部分的元素(因为该部分元素还没有赋值),只能通过函数等方式扩充列表
  • 可以进行无限嵌套,另有list comprehension expression用于协助嵌套后的列表操作(list comprehension expression较为复杂)

字典(Dictionaries)

  • 存储数据的方式有些像哈希表,但是存储元素对应的key值是用户自行输入生成的而不是根据存储元素的特征生成。
  • 与list不同,可以对不存在的项进行引用赋值从而创建新的项。但是不能直接调用不存在的项,因此可以用in函数来查询是否存在该项,另外还有get、try等函数可以使用
  • 字典中,各个项的排列顺序与输入顺序未必相同,完全由机能决定

元组(Tuple)

  • 类似于list,唯一区别是tuple是immutable的

文件(Files)

  • 使用open函数来创建文件对象,但是最好的方式是使用逐行读取的方式来创建file对象,后续章节会有说明。
  • file还分为二进制文件(binary file)和非通用编码文件(non unicode file)等,各自有相应的处理方式

其他

集合(Set)

  • 无序、不可变、非序列对象类型。基本类似于数学中集合的概念
  • 常用于无序比较、滤除重复值、获取不同的项等操作

其他数字类型

  • decimal numbers
  • fraction numbers
  • boolean
  • None,用于初始化list等对象时填位

posted on 2016-09-20 22:34  hazelnut  阅读(97)  评论(0)    收藏  举报

导航