当前位置:   article > 正文

菜鸟教程《Python 3 教程》笔记(1):基本数据类型_python 数据分析教程 菜鸟教程

python 数据分析教程 菜鸟教程

笔记带有个人侧重点,不追求面面俱到。

1 基本数据类型

出处: 菜鸟教程 - Python3 基本数据类型

Python 3 的六个标准数据类型中:

  • 不可变数据(3 个): Number(数字)、String(字符串)、Tuple(元组);
  • 可变数据(3 个): List(列表)、Dictionary(字典)、Set(集合)。

此外还有一些高级的数据类型,如: 字节数组类型(bytes)。

1.1 Number(数字)

注意:Python3 中,bool 是 int 的子类,True 和 False 可以和数字相加, True==1False==0会返回 True,但可以通过 is 来判断类型。

>>> issubclass(bool, int) 
True
>>> True==1
True
>>> False==0
True
>>> True+1
2
>>> False+1
1
>>> 1 is True
False
>>> 0 is False
False
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14

1.2 String(字符串)

Python 使用反斜杠 \转义特殊字符,如果你不想让反斜杠发生转义,可以在字符串前面添加一个 r,表示原始字符串:

>>> print('Ru\noob')
Ru
oob
>>> print(r'Ru\noob')
Ru\noob
  • 1
  • 2
  • 3
  • 4
  • 5

1.3 bool(布尔类型)

  • 布尔类型可以和其他数据类型进行比较,比如数字、字符串等。在比较时,Python 会将 True 视为 1,False 视为 0。
  • 布尔类型也可以被转换成其他数据类型,比如整数、浮点数和字符串。在转换时,True 会被转换成 1,False 会被转换成 0。
a = True
b = False

# 比较运算符
print(2 < 3)   # True
print(2 == 3)  # False

# 逻辑运算符
print(a and b)  # False
print(a or b)   # True
print(not a)    # False

# 类型转换
print(int(a))   # 1
print(float(b)) # 0.0
print(str(a))   # "True"
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16

1.4 List(列表)

list1 = [x for x in range(9)]

print(list1[-1::-2])  # [9]
print(list1[-1:-4])   # []
  • 1
  • 2
  • 3
  • 4

1.5 Tuple(元组)

虽然tuple的元素不可改变,但它可以包含可变的对象,比如list列表。
构造包含 0 个或 1 个元素的元组比较特殊,所以有一些额外的语法规则:

tup1 = ()    # 空元组
tup2 = (20,) # 一个元素,需要在元素后添加逗号
  • 1
  • 2

1.6 Set(集合)

注意: 创建一个空集合必须用 set() 而不是 {},因为 {} 是用来创建一个空字典。

# set可以进行集合运算
a = set('abracadabra')
b = set('alacazam')

print(a)
print(a - b)     # a 和 b 的差集
print(b - a)
print(a | b)     # a 和 b 的并集
print(a & b)     # a 和 b 的交集
print(a ^ b)     # a 和 b 中不同时存在的元素

{'d', 'c', 'r', 'a', 'b'}
{'r', 'd', 'b'}
{'m', 'z', 'l'}
{'m', 'd', 'c', 'r', 'a', 'z', 'b', 'l'}
{'a', 'c'}
{'m', 'r', 'd', 'z', 'b', 'l'}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17

1.7 Dictionary(字典)

键(key)必须使用不可变类型。在同一个字典中,键(key)必须是唯一的

构造函数 dict() 可以直接从键值对序列中构建字典如下:

>>> dict([('Runoob', 1), ('Google', 2), ('Taobao', 3)])
{'Runoob': 1, 'Google': 2, 'Taobao': 3}
>>> {x: x**2 for x in (2, 4, 6)}
{2: 4, 4: 16, 6: 36}
>>> dict(Runoob=1, Google=2, Taobao=3)
{'Runoob': 1, 'Google': 2, 'Taobao': 3}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6

1.8 bytes 类型

什么是 bytes 类型:

  • 在 Python3 中,bytes 类型表示的是不可变的二进制序列(byte sequence)。
  • 与字符串类型不同的是,bytes 类型中的元素是整数值(0 到 255 之间的整数),而不是 Unicode 字符。

怎么创建 bytes 类型:

  1. 使用 b 前缀;
  2. 可以使用 bytes() 函数将其他类型的对象转换为 bytes 类型。
x = bytes("hello", encoding="utf-8")
  • 1

注意: bytes 类型中的元素是整数值,因此在进行比较操作时需要使用相应的整数值。

x = b"hello"
if x[0] == ord("h"):
    print("The first element is 'h'")
  • 1
  • 2
  • 3
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/喵喵爱编程/article/detail/743778
推荐阅读
相关标签
  

闽ICP备14008679号