Menu Close

Python数据类型:数值,字典、集合、元组、列表数据类型

Python数据类型
Python数据类型

Python数据类型

Python 中的每个值都有一个数据类型。由于在 Python 编程中一切都是对象,因此数据类型实际上是类,而变量是这些类的实例(对象)。

Python中有多种数据类型。下面列出了一些重要的类型。

1. Python数值数据类型

整数、浮点数和复数属于 Python数值数据类型。它们在 Python 中被定义为 int、float 和 complex 类。

数值类型实例

int float complex
10 0.0 3.14j
100 15.20 45.j
-786 -21.9 9.322e-36j
080 32.3e+18 .876j
-0490 -90. -.6545+0J
-0x260 -32.54e100 3e+26J
0x69 70.2E-12 4.53e-7j

Python还支持复数复数由实数部分和虚数部分构成,可以用a + bj,或者complex(a,b)表示, 复数的实部a和虚部b都是浮点型.

内置的 type() 函数可以用来查询变量所指的对象的数据类型。

同样,isinstance() 函数用于检查对象是否属于特定数据类型。

isinstance 和 type 的区别在于:

  • type()不会认为子类是一种父类类型。
  • isinstance()会认为子类是一种父类类型。

例1.1 type函数,isinstance函数的应用

a = 5
print(a, "is of type", type(a))

a = 2.0
print(a, "is of type", type(a))

a = 1+2j
print(a, "is complex number?", isinstance(1+2j,complex))

结果

整数可以是任意长度,它仅受可用内存的限制。

浮点数精确到小数点后 15 位。整数和浮点数用小数点分隔。 1 是整数,1.0 是浮点数。

复数写成 x + yj 的形式,其中 x 是实部,y 是虚部。下列输出是浮点数,整数和复数的输入和输出结果:

>>> a = 1234567890123456789
>>> a
1234567890123456789
>>> b = 0.1234567890123456789
>>> b
0.12345678901234568
>>> c = 1+2j
>>> c
(1+2j)

请注意,浮点变量 b 被截断。

1.2 数值运算

    >>>5 + 4  # 加法
    9
    >>> 4.3 - 2 # 减法
    2.3
    >>> 3 * 7  # 乘法
    21
    >>> 2 / 4  # 除法,得到一个浮点数
    0.5
    >>> 2 // 4 # 除法,得到一个整数
    0
    >>> 17 % 3 # 取余 
    2
    >>> 2 ** 5 # 乘方
    32

注意:

  • 1、Python可以同时为多个变量赋值,如a, b = 1, 2。
  • 2、一个变量可以通过赋值指向不同类型的对象。
  • 3、数值的除法包含两个运算符:/ 返回一个浮点数,// 返回一个整数。
  • 4、在混合计算时,Python会把整型转换成为浮点数。

 

2. Python列表

List(列表) 是 Python 中使用最频繁的数据类型。 List 是有序的项目序列。它是 Python 中最常用的数据类型之一,并且非常灵活。

列表中的所有项目不需要属于同一类型。

声明一个列表非常简单。用逗号把每个项目分隔,所有项目用括号 [ ] 括起来。列表是写在方括号 [] 之间、用逗号分隔开的元素列表。

a = [1, 2.2, 'python']

我们可以使用切片运算符 [ ] 从列表中提取一个元素或一系列元素。在 Python 中列表索引从 0 开始。

例1.2 使用切片运算符提取列表中的元素值

a = [5,10,15,20,25,30,35,40]

# a[2] = 15
print("a[2] = ", a[2])

# a[0:3] = [5, 10, 15]
print("a[0:3] = ", a[0:3])

# a[5:] = [30, 35, 40]
print("a[5:] = ", a[5:])

输出结果

a[2] = 15
a[0:3] = [5, 10, 15]
a[5:] = [30, 35, 40]

列表是可变的,这意味着列表元素的值可以更改。

a = [1, 2, 3]
a[2] = 4
print(a)

结果

[1, 2, 4]

3.Python 元组

元组(tuple)与列表类似,不同之处在于元组的元素不能修改。元组写在小括号 () 里,元素之间用逗号隔开。元组中的元素类型也可以不相同:

元组用于对数据进行写保护,并且通常比列表更快,因为它们不能动态更改。

它在括号 () 中定义,其中项目用逗号分隔。

t = (5,'program', 1+3j)
print (t)

结果

(5, 'program', (1+3j))

我们可以使用切片运算符 [] 来提取元素,但我们不能更改它的值。

例3.1 元组内元素的提取和不可修改

t = (5,'program', 1+3j)

# t[1] = 'program'
print("t[1] = ", t[1])

# t[0:3] = (5, 'program', (1+3j))
print("t[0:3] = ", t[0:3])

# Generates error
# Tuples are immutable
t[0] = 10
结果
元组内元素不可更改
元组内元素不可更改

 

4.Python 字符串

字符串是 Unicode 字符序列。我们可以使用单引号或双引号来表示字符串。多行字符串可以使用三引号、”’ 或 “”” 来表示。

例4.1 字符串的应用

s = "This is a string"
print(s)
s = '''A multiline
string'''
print(s)

就像列表和元组一样,切片运算符 [ ] 可以与字符串一起使用。然而,字符串内元素是不可变的。

例4.2 字符串内元素不可更改
s = 'Hello world!'

# s[4] = 'o'
print("s[4] = ", s[4])

# s[6:11] = 'world'
print("s[6:11] = ", s[6:11])

# Generates error
# Strings are immutable in Python
s[5] ='d'
结果

结果显示,第11行给字符串第6个元素改变值是会产生语法错误。

READ  Python数据类型的相互转换, 如何将一个数据类型转换为另外一个数据类型

5.Python集合

集合(set)是由一个或数个形态各异的大小整体组成的,构成集合的事物或对象称作元素或是成员。基本功能是进行成员关系测试和删除重复元素。可以使用大括号 { } 或者 set() 函数创建集合,注意:创建一个空集合必须用 set() 而不是 { },因为 { } 是用来创建一个空字典。

换言之,Set 是唯一项的无序集合。 Set 由大括号 { } 内用逗号分隔的元素集合,元素是独特的。

例5.1 python集合的定义

a = {5,2,3,1,4}

# printing set variable
print("a = ", a)

# data type of variable a
print(type(a))
a = {1, 2, 3, 4, 5}
<class 'set'>

我们可以对两个集合执行集合操作,如合集、交集。集合内元素不可能一样。

例5.2集合内元素是唯一的

a = {1,2,2,3,3,3}
print(a)

结果

{1, 2, 3}

由于 set 是无序集合,索引没有任何意义。因此,切片运算符 [] 不起作用。

例5.3 切片运算符 [] 不起作用

a = {1,2,3}
print(a)
print(a[1])

6. Python 字典

字典(dictionary)是Python中另一个非常有用的内置数据类型。字典是一个无序的 键(key) : 值(value) 的集合。

它通常在我们有大量数据时使用。字典针对检索数据进行了优化。我们必须知道检索值的键。键(key)必须使用不可变类型。在同一个字典中,键(key)必须是唯一的

在 Python 中,字典是在大括号 {} 中定义的,每个项目都是 key:value 形式的一对。键(key)和值(value) 可以是任何类型。

例6.1

d = {1:'value','key':2}
print(type(d))

结果

<class 'dict'>

我们使用键( key) 来检索相应的值(value) 。但能通过值来发现键(key)。

d = {1:'value','key':2}
print(type(d))

print("d[1] = ", d[1])

print("d['key'] = ", d['key'])

# Generates error
print("d[2] = ", d[2])

结果

Traceback (most recent call last):
File "C:\0python\venv\HelloWorld.py", line 9, in <module>
print("d[2] = ", d[2])
KeyError: 2
<class 'dict'>
d[1] = value
d['key'] = 2

Process finished with exit code 1
集合的键和值
集合的键和值

注意:

  • 1、字典是一种映射类型,它的元素是键值对。
  • 2、字典的键必须为不可变类型,且不能重复。
  • 3、创建空字典使用 { }
除教程外,本网站大部分文章来自互联网,如果有内容冒犯到你,请联系我们删除!

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

Leave the field below empty!

Posted in Python教程

Related Posts