【二】python内置类型
1.布尔类型
表示真假的类型(true和false)
数字 0、None,以及元素为空的容器类对象都可视作False,反之为 True。
In [1]: bool(0) Out[1]: False In [2]: bool(1) Out[2]: True In [3]: bool(-9) Out[3]: True In [4]: bool(5) Out[4]: True In [5]: bool(None) Out[5]: False In [6]: bool("") Out[6]: False In [7]: bool([]) Out[7]: False In [8]: bool({}) Out[8]: False In [9]: bool([1,2]) Out[9]: True
2.数字
- 整数
In [10]: 5 Out[10]: 5 In [11]: 3+3*2 Out[11]: 9 In [12]: (3+3)*2 Out[12]: 12
- 浮点数(带小数的称之为浮点数)
In [13]: 0.0+0.1 Out[13]: 0.1 In [14]: 2*0.1 Out[14]: 0.2
3.字符串
In [16]: a="abc花花" In [17]: a Out[17]: 'abc花花' In [18]: len(a) Out[18]: 5 In [19]: print(ascii(a)) #内置函数 ascii 将目标转换为可打印 ASCII 字符组成的字符串。 'abc\u82b1\u82b1'
字符串表现形式:单引号,双引号,三引号
In [20]: "ab'c" #双引号 Out[20]: "ab'c" In [21]: 'ab"c'#单引号 Out[21]: 'ab"c' In [22]: 'ab\"c'#转义 Out[22]: 'ab"c' In [23]: """ #三引号 ...: a ...: b ...: c ...: """ Out[23]: '\na\nb\nc\n' In [24]: "a" "b" "c" #自动合并多个相邻字符串。 Out[24]: 'abc'
特殊指示符
In [27]: r"abc\nd" #禁止转义 Out[27]: 'abc\\nd' In [28]: type(b"abc") Out[28]: bytes In [29]: type(u"abc") Out[29]: str
str() 类型转换
In [30]: str(2.2) Out[30]: '2.2'
合并字符串
format
In [31]: "huahua:{}".format('=----') Out[31]: 'huahua:=----' In [32]: "hua{}".format("hua{}").format('is best') Out[32]: 'huahuais best'
+
In [33]: 'huahua'+'is' Out[33]: 'huahuais'
split() 分割
In [37]: a Out[37]: 'q,w,e' In [38]: a.split(",") Out[38]: ['q', 'w', 'e']
join() 合并
In [41]: a Out[41]: 'q,w,e' In [42]: l=a.split(",") In [43]: l Out[43]: ['q', 'w', 'e'] In [44]: ",".join(l) Out[44]: 'q,w,e'
find 查找子串:查找到返回该子串在原字符串中的索引位置,如果无法找到,find方法会返回值-1
In [46]: a Out[46]: 'q,w,e' In [47]: a.find("q") Out[47]: 0 In [48]: a.find("qq") Out[48]: -1
4.列表(list:用[ ]符号表示)
详情请参见:http://www.cnblogs.com/8013-cmf/p/6890297.html
5.元组(tuple:用( )符号表示)
与列表类似,元组也是由任意类型元素组成的序列。与列表不同的是,元组是不可改变的,无法再进行增加、删除或者修改元素等操作
In [49]: a=() #可以用()创建一个空元组 In [50]: a Out[50]: () In [51]: type(a) Out[51]: tuple In [52]: num='1', In [53]: num Out[53]: ('1',)
6.字典(dict:用{ }符号表示)
创建一个空字典
In [55]: qq={} In [56]: qq Out[56]: {} In [57]: type(qq) Out[57]: dict
使用 dict() 转换为字典
In [58]: aa=[["q","q"],["b","b"]] In [60]: type(aa) Out[60]: list In [61]: dict(aa) Out[61]: {'b': 'b', 'q': 'q'}
In [65]: type(qq) Out[65]: dict In [66]: dir(qq) Out[66]: ['__class__', '__contains__', '__delattr__', '__delitem__', '__dir__', '__doc__', '__eq__', '__format__', '__ge__', '__getattribute__', '__getitem__', '__gt__', '__hash__', '__init__', '__iter__', '__le__', '__len__', '__lt__', '__ne__', '__new__', '__reduce__', '__reduce_ex__', '__repr__', '__setattr__', '__setitem__', '__sizeof__', '__str__', '__subclasshook__', 'clear', 'copy', 'fromkeys', 'get', 'items', 'keys', 'pop', 'popitem', 'setdefault', 'update', 'values']
7.集合
使用 set() 创建集合
In [67]: z=set() In [68]: z Out[68]: set() In [69]: type(z) Out[69]: set In [70]: zz={1,2,3,4,5} In [71]: zz Out[71]: {1, 2, 3, 4, 5} In [72]: type(zz) Out[72]: set
与字典一样,集合是无序的。
使用set()将其他类型转换为集合
In [77]: set('qweqwe') #你可以利用已有的列表、字符串、元组或字典的内容来创建集合,其中重复的值会被丢弃。 Out[77]: {'e', 'q', 'w'} In [78]: set(['one',"two"]) #用列表建立集合 Out[78]: {'one', 'two'} In [79]: set({"qq":"qqq","aa":"aaa"}) #当字典作为参数传入set()函数时,只有键会被使用 Out[79]: {'aa', 'qq'}
8.建立大型数据结构
建立3个列表
In [82]: num=[1,2,3] In [83]: name=["qq","ww","ee"] In [84]: englist=["one","two","three"]
把上面每一个列表当做一个元素,并建立一个元组
In [85]: tol=num,name,englist In [86]: tol Out[86]: ([1, 2, 3], ['qq', 'ww', 'ee'], ['one', 'two', 'three'])
同样,可以创建一个包含上面三个列表的列表
In [89]: lol=[num,name,englist] In [90]: lol Out[90]: [[1, 2, 3], ['qq', 'ww', 'ee'], ['one', 'two', 'three']]
还可以创建以这三个列表为值的字典
In [91]: qwe={'num':num,'name':name,'englist':englist} In [92]: qwe Out[92]: {'englist': ['one', 'two', 'three'], 'name': ['qq', 'ww', 'ee'], 'num': [1, 2, 3]}