【二】python内置类型

时间:2022-02-12 16:59:38

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]}