【python】(2)数据类型

本文详细介绍了Python中的数据类型,包括数字(整型、浮点型、复数)、布尔类型、顺序结构(列表、元组、字符串)的操作,以及字典和集合的使用。文章覆盖了各类型的基本操作,如进制转换、字符串格式化、列表和元组的添加、删除、转换,以及字典和集合的创建、访问和修改等。
摘要由CSDN通过智能技术生成

数字类型(Number)

  • 整型(Int):或整数,是不包含小数部分的数字。Python中的整型是无限精度的,这意味着Python可以处理任意大小的整数,只要你的计算机内存足够大。
  • 浮点型(Float):浮点数是带有小数点及小数的数字。在Python中,浮点数由64位IEEE 754双精度表示,这是一种在计算机中表示实数的标准形式,允许非常大或非常小的数以固定的精度表示。虽然Python中没有单独的double类型,但其标准浮点类型就是以双精度存储。

科学计数法

科学计数法允许快速表示和处理极端大小的值。通过eE后接指数来表示。例如 1.23e-2 等于 0.0123

数中的下划线

Python 3.6及以后的版本支持在数字字面量中使用下划线_作为视觉上的分隔符,以提高大数值的可读性。这些下划线在Python解释器读取时会被忽略,不影响数值的实际大小或值。

count = 1000_00_0.0_0000_000000 
print(count)  
# 输出: 1000000.0

进制表示和转换

直接支持二进制、八进制、十进制和十六进制数的表示和转换。

  • 二进制数以0b0B开头。
  • 八进制数以0o0O开头。
  • 十六进制数以0x0X开头。

提供了bin()oct()hex()函数来将整数转换成对应的二进制、八进制、十六进制字符串。使用int()函数可以将这些进制的字符串转换回十进制数值。

print(bin(54))     # 二进制表示:'0b110110' 
print(oct(1465))         # 转换为八进制:'0o2671'
print(hex(0b110111001))  # 转换为十六进制:'0x1b9' 
print(int(0b101101011))  # 转换为十进制:363 

字符与ASCII值转换

在Python中,每个字符都有一个对应的ASCII(美国信息交换标准代码)值,也适用于Unicode字符。ord()函数可以将一个字符转换为其ASCII(或Unicode)值,而chr()函数可以执行相反的操作,将ASCII(或Unicode)值转换回对应的字符。

print(ord('a'))  
# 输出:97 
print(ord('A'))  
# 输出:65
print(chr(65)) 
# 输出:A

复数(Complex)

复数在Python中是一种内置的数据类型,用于表示有实部和虚部的数。复数广泛应用于科学和工程领域,特别是在电磁学、量子物理、信号处理等领域。Python对复数的支持使得进行这些领域的计算变得简单直接。

复数由实部和虚部组成,写作a + bj,其中a是实部,b是虚部,j是虚数单位(在数学中通常用i表示,但在Python中使用j)。

在Python中,有两种方法可以创建复数:

  1. 直接通过在数字后面添加j来指定虚部。
  2. 使用内置的complex(real, imag)函数,其中real是实部,imag是虚部。
# 使用j创建复数
a = 1 + 1j

# 使用complex函数创建复数
b = complex(3, 4)

复数对象有两个属性:.real.imag,分别用于获取复数的实部和虚部。支持基本运算,包括加法、减法、乘法、除法等。

模和相位

  • 模(Magnitude):复数的模可以使用abs()函数计算,返回复数到原点的距离,即sqrt{a^2 + b^2}
  • 相位(Phase):可以使用cmath.phase()函数计算复数的相位,即复数向量和正实轴之间的角度。需要先import cmath模块。
import cmath

a = 1 + 1j
b = complex(3, 4)

# 打印实部和虚部
print("实部:", b.real)
print("虚部:", b.imag)

# 复数运算
print("相加:", a + b)

# 复数的模
print("a的模:", abs(a))
print("b的模:", abs(b))

# 复数的相位
print("b的相位:", cmath.phase(b))

# 使用cmath模块还可以计算更多复数相关的函数,如指数、对数等。

布尔类型(Bool)

布尔(Bool)类型是Python中表示真值的数据类型,只有两个值:True(真)和 False(假)。

布尔值的来源

布尔值不仅可以通过直接比较获得,也可以通过布尔运算的结果获得。几乎所有对象都可以进行布尔测试,以决定它们在条件语句中被视为真或假。

  • 数值0、空字符串''、空列表[]、空元组()、空字典{}None等被视为False

  • 非零的数值、非空的字符串、列表、元组、字典等被视为True

  • 比较操作符(如==, !=, >, <, >=, <=)会返回布尔值:

    print(5 > 3)  # 输出: True
    print(10 == 10)  # 输出: True
    print(10 != 10)  # 输出: False
    
  • 逻辑操作符and, or, not)用于组合条件表达式:

    print(True and False)  # 输出: False
    print(True or False)  # 输出: True
    print(not True)  # 输出: False
    
转换
  • 使用bool()函数可以将其他数据类型转换成布尔类型:

    print(bool(1))  # 输出: True
    print(bool(''))  # 输出: False
    

顺序结构

列表(List)

列表是一种可变的数据结构,可存储任意类型的元素,使用方括号[]创建,支持增加、删除和修改操作。

列表操作

创建列表
a = ['q', 1, '111', 2222]
li = []  # 空列表
li = list()  # 空列表的另一种表示
追加

使用 append() 方法在列表末尾添加元素。

a = [1, 2, 3]
a.append(4)  # 结果:[1, 2, 3, 4]
插入

使用 insert() 方法在指定位置添加元素。

a = [1, 2, 3]
a.insert(1, 'new')  # 结果:[1, 'new', 2, 3]
列表扩展

使用 extend() 方法合并另一个列表。

a = [1, 2, 3]
a.extend([4, 5])  # 结果:[1, 2, 3, 4, 5]
取出

使用 pop() 方法移除并返回指定位置的元素。

a = [1, 2, 3]
removed_element = a.pop(1)  # 结果:2, 列表变为[1, 3]
移除元素

使用 remove() 方法删除指定的元素。

a=[1,2,3]
a.remove(2)# 结果:[1, 3]
# 或者
del a[2]# 结果:[1, 3]
清空

使用 clear() 方法清空整个列表。

a = [1, 2, 3]
a.clear()  # 结果:[]
排序
  • 16
    点赞
  • 21
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

游码客

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值