Python基础教程之五:Python中的数据类型

数据类型定义变量的类型。由于所有内容都是Python中的对象,因此数据类型实际上是类。变量是类的实例。

在任何编程语言中,可以对不同类型的数据类型执行不同的操作,其中某些数据类型与其他数据类型相同,而某些数据类型非常特定于该特定数据类型。

1. 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

2.详细的数据类型

2.1。字符串

字符串可以定义为用单引号,双引号或三引号引起来的字符序列。三引号(“””)可用于编写多行字符串。

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
2.2。整数,浮点数,复数

这些是数字类型。

  • int 保留长度不受限制的带符号整数。
  • float 保留浮点精度数字,并且它们的精度最高为15个小数位。
  • complex –复数包含实部和虚部。
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
2.3。list,tuple

在Python中,list是一些数据的有序序列。列表可以包含不同类型的数据

[:]运算符可用于访问列表中的数据。

list可以使用 (+) 和 (*) 运算符 。

tuple是类似list的-除了tuple是一个只读的数据结构,我们不能修改一个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
2.4。dict

dict键值对有序集合。键可以保存任何原始数据类型,而值是任意的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'])
2.5。set,frozenset

python中的set可以定义为花括号中包含的各种项目的无序集合{, }。

集合中的元素不能重复。python set的元素必须是不可变的

不同于list,没有index。这意味着我们只能循环访问的元素set。

frozen sets是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 

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'
2.6。bool

bool值是两个恒定的对象False和True。在数字上下文中,它们的行为分别类似于整数0和1。

x = True

y = False

print(x) #True

print(y) #False

print(bool(1)) #True

print(bool(0)) #False
2.7。bytes, bytearray, memoryview

bytesbytearray用于处理二进制数据。所述memoryview使用缓冲协议来访问其他二进制对象的存储器,而无需进行复制。

字节对象是单个字节的不可变序列。仅在处理与ASCII兼容的数据时,才应使用它们。

bytes文字的语法与string的语法相同,只是'b'添加了前缀。

bytearray对象总是通过调用构造函数来创建的bytearray()。这些是可变的对象。

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) # 

3. type()函数

该type()函数可用于获取任何对象的数据类型。

获取类型

x = 5

print(type(x)) # 

y = 'howtodoinjava.com'

print(type(y)) # 

祝:学习愉快、工作顺利!

关注公众号「码农园区」,获取程序员大礼包
在这里插入图片描述

 

你可能感兴趣的:(python,python,windows,开发语言)