Hi,我是九柄,全网同号,明天咱们说说Python的数据类型。

python数据类型有什么特点

每一门编程语言都要学数据类型的,每种类型的操作会略微有一点区别。Python是一门非常灵活的编程语言,数据类型的指定和其余编程语言会略微有一点区别。

首先,Python 不须要显性申明数据的类型,当定义变量的时候,会智能判断变量存储的类型。

name = "jiubing"age = 19公号 = "九柄"

其次,在定义变量时,不须要指定一个数据,这样程序才晓得它的数据类型。

name    # 谬误写法,变量没写数据

Python是强类型的编程语言

你可能常常会据说一门编程语言是强类型还是弱类型,其实你不须要太去深究这个概念,只须要大略晓得,强类型语言不能用两个不同类型的数据进行运算就能够了(不是相对的)。

python 是强类型的,所以运算时,要留神是否同类型。

"jiubing"  + 1    #谬误写法"jiubing" * 3   # 但这个是正确的

数据类型有哪些

Python 外面罕用的数据类型有:

  • str 字符串
  • int 整型
  • float 浮点数
  • bool 布尔
  • list 列表
  • dict 字典
  • tuple 元组
  • set 汇合
  • NoneType 空类型

每一个数据类型的示意都有一个小小案例,眼生就够了,前面每种数据类型都会具体讲。

# str"hello"# int3# float3.1# boolTrue# list[1,2,3]# dict{"name": "mingtian"}# tuple(1,2)# set{1,2,3}# NoneTypeNone

数据类型判断

尽管咱们写了这么多数据,然而并不知道在 python 中他们真的数据类型是什么。isinstance() 这个操作能够判断一个数据是否为某个数据类型。 然而 None 不能用这个判断。

# strprint(isinstance("hello", str))# intprint(isinstance(3, int))# floatprint(isinstance(3.1, float))# boolprint(isinstance(True, bool))# listprint(isinstance([1,2,3], list))# dictprint(isinstance({"name": "mingtian"}, dict))# tupleprint(isinstance((1,2), tuple))# setprint(isinstance({1,2,3}, set))# NoneTypeprint(None is None)TrueTrueTrueTrueTrueTrueTrueTrueTrue

有的教程会用 type() 这个操作判断数据类型,然而 isinstance 会更加罕用,我集体认为 type 略微理解就能够了。

数据类型转换

简直所有的数据类型都是能够转化成字符串的,然而反过来则不肯定。数据类型转换须要满足特定的规定。

转化成整型

  # float 转成 int, 去掉小数点  print(int(1.7))    # bool 转成 int, True 为 1, False 为 0  print(int(True))    # str 转成 int, 必须是整数格局  print(int("4"))  1  1  4

转换成浮点数

  # int 转换成 float  print(float(3))    # bool 转换成 float  print(float(True))    # str 转成 float, 必须是浮点格局  print(float("4.6"))  3.0  1.0  4.6

转换成布尔类型

  # int 转换成 bool, 0 为 False, 其余为 True  print(bool(3))  print(bool(0))    # float 转换成 bool, 和 int 一样  print(bool(-1.2))    # str 转成 bool, "" 为 False, 其余为 True  print(bool(""))  print(bool("ab"))    # tuple 转成 bool, 空为 False  # list 转成 bool, 空为 False  # dict 转成 bool, 空为 False  # set 转成 bool, 空为 False  print(bool([]))  True  False  True  False  True  False

转换成列表

个别是容器类型能力互相实现转换。

  # str -> list ,拆分字符  print(list("没那么简略"))    # dict -> list ,失去所有的 key  print(list({"name": "mingtian"}))  ['没', '那', '么', '简', '单']  ['name']

转换成字典

首先原类型是一个序列,序列当中的每个元素须要蕴含两个元素,作为键值对。

  origin = [("name","mingtian"), ("age", "19")]  print(dict(origin))  {'name': 'mingtian', 'age': '19'}

可变数据类型和不可变类型

每一个数据都会存在电脑内存当中某个地位, 有的数据定义好了之后,能够批改,而有的数据类型则不能被批改。 数据类型可变性间接决定了当前的操作,如果不深刻了解,代码常常会出问题。

而当初只须要大略理解,前面再深刻解说。

Python 的可变类型:

  • 列表
  • 字典
  • 汇合

Python 的不可变类型:

  • 字符串
  • 整型
  • 浮点数
  • 布尔
  • 元组

数据类型学什么

总体上来说,看到一个数据,能马上能辨认它是什么类型就能够了。 随后,就能够依据不同的数据类型执行对应的操作。 必要的时候,还须要对数据类型进行转换。

数据类型中,列表、字典、元组常常会在面试题中呈现,在面试之前须要额定注意,我整顿的面试八股文中就有很多这样的题,能够在文章开端拿到。

数据类型还有很多十分具体的操作,尤其是字符串、列表、字典须要应用十分多,须要认真把握。

我是九柄,下期见啦。