数据类型定义变量的类型。因为全部内容都是Python中的对象,所以数据类型其实是类。变量是类的实例。html
在任何编程语言中,能够对不一样类型的数据类型执行不一样的操做,其中某些数据类型与其余数据类型相同,而某些数据类型很是特定于该特定数据类型。java
Python默认具备如下内置数据类型。python
Category | Data types / Class names |
---|---|
Text/String | str |
Numeric | int, float, complex |
List | list, tuple, range |
Map | dict |
Set | set, frozenset |
Boolean | bool |
Binary | bytes, bytearray, memoryview |
字符串能够定义为用单引号,双引号或三引号引发来的字符序列。三引号(“””)可用于编写多行字符串。git
str数据类型编程
x = 'A' y = "B" z = """ C """ print(x) # prints A print(y) # prints B print(z) # prints C print(x + y) # prints AB - concatenation print(x*2) # prints AA - repeatition operator name = str('john') # Constructor sumOfItems = str(100) # type conversion from int to string
这些是数字类型。它们是在将数字分配给变量时建立的。数组
数值类型数据结构
x = 2 # int x = int(2) # int x = 2.5 # float x = float(2.5) # float x = 100+3j # complex x = complex(100+3j) # complex
在Python中,list是使用方括号()和逗号()编写的一些数据的有序序列。列表能够包含不一样类型的数据。[ ],dom
Slice [ :]运算符可用于访问列表中的数据。编程语言
所述并置运算符(+)和重复操做符(*)的工做原理相似的str数据类型。分布式
甲范围能够被认为是sublist,一个的取出list使用切片运算符。
一个元组是相似list的-除了tuple是一个只读的数据结构,咱们不能修改一个元组的项目的规模和价值。另外,项目用括号括起来(, )。
清单类型
randomList = [1, "one", 2, "two"] print (randomList); # prints [1, 'one', 2, 'two'] print (randomList + randomList); # prints [1, 'one', 2, 'two', 1, 'one', 2, 'two'] print (randomList * 2); # prints [1, 'one', 2, 'two', 1, 'one', 2, 'two'] alphabets = ["a", "b", "c", "d", "e", "f", "g", "h"] print (alphabets[3:]); # range - prints ['d', 'e', 'f', 'g', 'h'] print (alphabets[0:2]); # range - prints ['a', 'b'] randomTuple = (1, "one", 2, "two") print (randomTuple[0:2]); # range - prints (1, 'one') randomTuple[0] = 0 # TypeError: 'tuple' object does not support item assignment
字典或字典是项的键值对的有序集合。键能够保存任何原始数据类型,而值是任意的Python对象。
字典中的条目用逗号分隔并括在花括号中{, }。
字典类型
charsMap = {1:'a', 2:'b', 3:'c', 4:'d'}; print (charsMap); # prints {1: 'a', 2: 'b', 3: 'c', 4: 'd'} print("1st entry is " + charsMap[1]); # prints 1st entry is a print (charsMap.keys()); # prints dict_keys([1, 2, 3, 4]) print (charsMap.values()); # prints dict_values(['a', 'b', 'c', 'd'])
python中的set能够定义为花括号中包含的各类项目的无序集合{, }。
集合中的元素不能重复。python set的元素必须是不可变的。
不一样于list,没有indexset元素。这意味着咱们只能循环访问的元素set。
该冻结套是正常集的不变形式。这意味着咱们没法删除任何项目或将其添加到冻结集中。
设置类型
digits = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9} print(digits) # prints {0, 1, 2, 3, 4, 5, 6, 7, 8, 9} print(type(digits)) # prints <class 'set'> print("looping through the set elements ... ") for i in digits: print(i) # prints 0 1 2 3 4 5 6 7 8 9 in new lines digits.remove(0) # allowed in normal set print(digits) # {1, 2, 3, 4, 5, 6, 7, 8, 9} frozenSetOfDigits = frozenset({0, 1, 2, 3, 4, 5, 6, 7, 8, 9}) frozenSetOfDigits.remove(0) # AttributeError: 'frozenset' object has no attribute 'remove'
布尔值是两个恒定的对象False和True。它们用于表示真值。在数字上下文中,它们的行为分别相似于整数0和1。
x = True y = False print(x) #True print(y) #False print(bool(1)) #True print(bool(0)) #False
bytes和bytearray用于处理二进制数据。所述memoryview使用缓冲协议来访问其余二进制对象的存储器,而无需进行复印。
字节对象是单个字节的不可变序列。仅在处理与ASCII兼容的数据时,才应使用它们。
bytes文字的语法与文字的语法相同string,只是'b'添加了前缀。
bytearray对象老是经过调用构造函数来建立的bytearray()。这些是可变的对象。
字节,内存视图类型
x = b'char_data' x = b"char_data" y = bytearray(5) z = memoryview(bytes(5)) print(x) # b'char_data' print(y) # bytearray(b'\x00\x00\x00\x00\x00') print(z) # <memory at 0x014CE328>
该type()函数可用于获取任何对象的数据类型。
获取类型
x = 5 print(type(x)) # <class 'int'> y = 'howtodoinjava.com' print(type(y)) # <class 'str'>
将您的问题留在个人评论中。
学习愉快!
参考:Python文档
做者:分布式编程
出处:https://zthinker.com/
若是你喜欢本文,请长按二维码,关注 分布式编程
.