美文网首页
python学习笔记之--类型

python学习笔记之--类型

作者: itsenlin | 来源:发表于2021-11-30 01:13 被阅读0次

属性

python是一种面向对象的编程语言,python类型包含基础类型和自定义类型;
任何类型的变量在python下都是一个对象,对象包含三个属性:

  1. 身份,可以通过内建函数id()查看,很少使用
  2. 类型,可以通过type()函数查看
  3. 值,对象表示的数据项

基础类型

目前python中有6种基础类型:

  • 不可变类型:Number、String、Tuple
  • 可变类型: List、Set、Dictionary

数字(Number)

包含:整形、浮点、复数、布尔

字符串(String)

  • 可以使用'或者"括起来
  • \转义特殊字符
  • +连接两个字符串
  • *号表示复制当前字符串,例如
    >>> print("hello" * 3)
    hellohellohello
    >>>
    
  • 可以通过下标访问字符串中的字符,可以通过切片访问子串等; 即支持List的操作

列表(List)

  • 列表类似于c语言的数组,元素在[]之间,以,分隔;
  • 可以通过下标访问元素,下标从0开始到n-1(n为元素个数)
  • +*与string含义一致
  • 一个列表中的元素类型可以不一样,例如:
    >>> a = ['a', 2]
    >>> type(a[0])
    <class 'str'>
    >>> type(a[1])
    <class 'int'>
    >>>
    

元组(Tuple)

与List类似,区别:

  • 元素放在()之间
  • 元素内容不可变
  • 只有一个元素时,后面要跟一个,,不然访问时会报错,如下
>>> c=(50)
>>> type(c)
<class 'int'>
>>> c
50
>>> d = (50,)
>>> type(d)
<class 'tuple'>
>>> d
(50,)
>>>

说明:由圆括号包括的一个单一元素首先被作为分组操作,而不是作为元组的分界符;变通的方法就是在单一元素后面加一个,

  • 元组的'可变性'
    如果元组的元素是可变对象(像list),则对应元素的值是可以变的,如下
>>> a = (1, 2, 3)
>>> a[0] = 10
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
TypeError: 'tuple' object does not support item assignment
>>> b = (1, 2, 3, [4, 5, 6])
>>> b
(1, 2, 3, [4, 5, 6])
>>> b[3][0] = 10
>>> b
(1, 2, 3, [10, 5, 6])
>>>

集合(Set)

  • 非空集合,可以通过{}或者set()函数创建
  • 空集合只能通过set()创建,原因是{}表示空的字典
  • 集合可以去重
  • 与数学中的集合操作对比如下


    image.png

字典(Dictionary)

  • 类型其他语言的map,以key-value对存放于{}
  • key只能使用不可变量,一般使用整数和字符串
  • 在一个字典中key唯一

自定义类型

通过关键字class可以自定义类型,类似其他面向对象语言

相关文章

网友评论

      本文标题:python学习笔记之--类型

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