【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) 将一个整数转换为一个八进制字符串
相关推荐
黑客Jack9 分钟前
[Python/网络安全] Git漏洞之Githack工具基本安装及使用详析
git·python·web安全
十二测试录10 分钟前
Android SDK下载安装(图文详解)
android·经验分享·python·程序人生·adb·自动化
Panda-gallery22 分钟前
【Rust】错误处理机制
开发语言·后端·rust
墨绿色的摆渡人24 分钟前
pytorch小记(七):pytorch中的保存/加载模型操作
人工智能·pytorch·python
Panda-gallery26 分钟前
【Rust】结构体的方法语法
开发语言·后端·rust
墨绿色的摆渡人28 分钟前
pytorch小记(三):pytorch中的最大值操作:x.max()
人工智能·pytorch·python
从善若水29 分钟前
【Rust学习笔记】Rust 的所有权介绍
笔记·学习·rust
get_money_31 分钟前
贪心算法汇总
java·开发语言·数据结构·算法·leetcode·贪心算法
ByteBlossom66632 分钟前
Perl语言的语法
开发语言·后端·golang
摇光931 小时前
js观察者模式
开发语言·javascript·观察者模式