【Python学习系列】数据类型(二)

文章目录

一、数值类型(Numbers)

  • 整数(Integers):表示整数,如 1, 2, -3 等。
  • 浮点数(Floats):表示浮点数,即带有小数点的数,如 3.14, -0.5 等。
  • 复数(Complex):表示复数,由实部和虚部组成,如 3 + 4j。
python 复制代码
a = 10          # 整数
b = 3.14        # 浮点数
c = 3 + 4j      # 复数

print(type(a))  # <class 'int'>
print(type(b))  # <class 'float'>
print(type(c))  # <class 'complex'>

二、序列(Sequences)

  • 字符串(Strings):表示文本数据,由字符组成,用单引号、双引号或三引号括起来,如 'hello', "world", '''multi-line string'''。
  • 列表(Lists):表示有序的元素集合,元素可以是不同类型,用方括号 \[\] 括起来,如 1, 2, 3, 'a', 'b', 'c'。
  • 元组(Tuples):表示有序的不可变元素集合,用圆括号 () 括起来,如 (1, 2, 3), ('a', 'b', 'c')。
python 复制代码
s = "hello"     # 字符串
l = [1, 2, 3]   # 列表
t = (1, 2, 3)   # 元组

print(type(s))  # <class 'str'>
print(type(l))  # <class 'list'>
print(type(t))  # <class 'tuple'>

2.1 字符串

如果你要实现从字符串中获取一段子字符串的话,可以使用 头下标:尾下标 来截取相应的字符串,其中下标是从 0 开始算起,可以是正数或负数,下标可以为空表示取到头或尾。注:获取的子字符串包含头下标的字符,但不包含尾下标的字符。

python 复制代码
#!/usr/bin/python
# -*- coding: UTF-8 -*-
 
str = 'abcdefg'
 
print str           # 输出完整字符串,执行结果:abcdefg
print str[0]        # 输出字符串中的第一个字符,执行结果:a
print str[2:5]      # 输出字符串中第三个至第六个之间的字符串(其中不包含第六个字符),执行结果:cde
print str[2:]       # 输出从第三个字符开始的字符串,执行结果:cdefg
print str * 2       # 输出字符串两次,执行结果:abcdefgabcdefg
print str + "TEST"  # 输出连接的字符串,执行结果:abcdefgTEST

2.2 列表

列表中值的切割也可以用到变量 头下标:尾下标 ,就可以截取相应的列表,从左到右索引默认 0 开始,从右到左索引默认 -1 开始。其中加号 + 是列表连接运算符,星号 * 是重复操作。

python 复制代码
#!/usr/bin/python
# -*- coding: UTF-8 -*-
 
list = [ 'runoob', 786 , 2.23, 'john', 70.2 ]
tinylist = [123, 'john']
 
print list               # 输出完整列表,执行结果:['runoob', 786, 2.23, 'john', 70.2]
print list[0]            # 输出列表的第一个元素,执行结果:runoob
print list[1:3]          # 输出第二个至第三个元素,执行结果:[786, 2.23]
print list[2:]           # 输出从第三个开始至列表末尾的所有元素,执行结果:[2.23, 'john', 70.2]
print tinylist * 2       # 输出列表两次,执行结果:[123, 'john', 123, 'john']
print list + tinylist    # 打印组合的列表,执行结果:['runoob', 786, 2.23, 'john', 70.2, 123, 'john']

2.3 元组

python 复制代码
#!/usr/bin/python
# -*- coding: UTF-8 -*-
 
tuple = ( 'runoob', 786 , 2.23, 'john', 70.2 )
tinytuple = (123, 'john')
 
print tuple               # 输出完整元组,执行结果:('runoob', 786, 2.23, 'john', 70.2)
print tuple[0]            # 输出元组的第一个元素,执行结果:runoob
print tuple[1:3]          # 输出第二个至第四个(不包含)的元素 ,执行结果:(786, 2.23)
print tuple[2:]           # 输出从第三个开始至列表末尾的所有元素,执行结果:(2.23, 'john', 70.2)
print tinytuple * 2       # 输出元组两次,执行结果:(123, 'john', 123, 'john')
print tuple + tinytuple   # 打印组合的元组,执行结果:('runoob', 786, 2.23, 'john', 70.2, 123, 'john')

三、集合(Sets)

  • 集合(Sets):表示无序的不重复元素集合,用大括号 {} 括起来,如 {1, 2, 3}。也可以使用 set() 函数创建空集合。
python 复制代码
my_set = {1, 2, 3}  # 集合
empty_set = set()   # 创建空集合

print(type(my_set))    # <class 'set'>
print(type(empty_set)) # <class 'set'>

四、映射(Mappings)

  • 字典(Dictionaries):表示键值对的集合,用大括号 {} 括起来,键必须是不可变类型,如 {1: 'one', 2: 'two'}, {'a': 1, 'b': 2}。
python 复制代码
my_dict = {'a': 1, 'b': 2}  # 字典

print(type(my_dict))  # <class 'dict'>

字典与列表最大区别在于:字典当中的元素是通过键来存取的,而不是通过偏移存取,具体使用案例如下:

python 复制代码
#!/usr/bin/python
# -*- coding: UTF-8 -*-
 
dict = {}
dict['one'] = "This is one"
dict[2] = "This is two"
 
tinydict = {'name': 'runoob','code':6734, 'dept': 'sales'}
 
 
print dict['one']          # 输出键为'one' 的值,输出结果:This is one
print dict[2]              # 输出键为 2 的值,输出结果:This is two
print tinydict             # 输出完整的字典,输出结果:{'dept': 'sales', 'code': 6734, 'name': 'runoob'}
print tinydict.keys()      # 输出所有键,输出结果:['dept', 'code', 'name']
print tinydict.values()    # 输出所有值,输出结果:['sales', 6734, 'runoob']

五、布尔值(Booleans)

  • 布尔值(Booleans):表示逻辑值,只有两个值:True 和 False。
python 复制代码
is_true = True   # 布尔值
is_false = False # 布尔值

print(type(is_true))  # <class 'bool'>
print(type(is_false)) # <class 'bool'>

六、None类型

  • None:表示空值或无值,只有一个值 None。
python 复制代码
nothing = None  # None类型

print(type(nothing))  # <class 'NoneType'>

七、数据类型转换

函数 描述
int(x ,base) 将x转换为一个整数
long(x ,base ) 将x转换为一个长整数
float(x) 将x转换到一个浮点数
complex(real ,imag) 创建一个复数
str(x) 将对象 x 转换为字符串
repr(x) 将对象 x 转换为表达式字符串
eval(str) 用来计算在字符串中的有效Python表达式,并返回一个对象
tuple(s) 将序列 s 转换为一个元组
list(s) 将序列 s 转换为一个列表
set(s) 转换为可变集合
dict(d) 创建一个字典。d 必须是一个序列 (key,value)元组。
frozenset(s) 转换为不可变集合
chr(x) 将一个整数转换为一个字符
unichr(x) 将一个整数转换为Unicode字符
ord(x) 将一个字符转换为它的整数值
hex(x) 将一个整数转换为一个十六进制字符串
oct(x) 将一个整数转换为一个八进制字符串
相关推荐
Pniubi23 分钟前
Java为什么要分堆和栈
java·开发语言
用户298698530141 小时前
Python 自动化处理 Word 页眉页脚的几种典型场景
后端·python·api
小小晓.1 小时前
Qt 对话框、QLineEdit 与布局管理实战详解
开发语言·qt
終不似少年遊*1 小时前
【安全业务Agent】从场景到编排
python·react.js·ai·langchain·agent·安全架构·工作流
AKA__Zas1 小时前
接口自动化测试(1.0 初认识
python·ci/cd·学习方法
炸薯条!2 小时前
博客系统测试报告
开发语言·lua
Evand J2 小时前
【MATLAB例程12】永磁同步电机基于增广无迹卡尔曼滤波的未知负载转矩在线观测
开发语言·matlab
用户0332126663672 小时前
使用 Python 在 Excel 文档中添加水印
python·excel
lisw052 小时前
作为人类代理的大语言模型及其角色分类!
人工智能·学习·语言模型
高洁012 小时前
自然语言处理的技术演进与核心任务
人工智能·python·深度学习·机器学习·迁移学习