python基础数据类型一

本文介绍了Python中的基础数据类型,包括查看数据类型的方法如type()、help()、dir()等,详细讲解了数字类型(整型、浮点型、复数),特别是浮点型的高精度计算,并探讨了字符串类型及其常用方法,如索引、切片、split()、capitalize()、count()、strip()等,以及字符串的拼接和长度计算。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、查看数据类型的方法:

1、type()查看数据类型

2、help()查看类下全部方法

3、dir()查看类下全部方法名

4、Ctrl+鼠标左键,查看类下某特定方法

二、python基础数据类型的转换及常用方法:

1 数字类型:

1.1 整型int()

整型的概念与数学中的整数概念一致

a=3
a1=float(a)  #把a转换为浮点型
print(a1,type(a1))  #输出 3.0   <class 'float'>
a2=str(a)   #把a转换为数字型字符串
print(a2,type(a2))    #输出 3 <class 'str'>

1.2 浮点型float()

浮点型与数学中实数概念一致

b=3.14
b1=int(b)   #把b转换为整形
print(b1,type(b1))    #输出   3    <class 'int'>

需要注意的是,计算机在运算浮点型数据时,是存在误差的

# 例如:
a = 3.14
b = 0.2
c = a+b
print(c)  #输出结果为 3.3400000000000003
1.2.1 使用decimal进行高精度计算

不同类型参数的差异

# 例如
import decimal
a = decimal.Decimal(1.123)*1000  # 传入浮点型数据
b = decimal.Decimal('1.123')*1000  # 传入字符串数据
print(a)  # 1122.999999999999998223643161
print(b)  # 1123.000

控制输出精度

# 例如
import decimal
decimal.getcontext()  # 默认输出精度为28位
a = decimal.Decimal(1.1)*decimal.Decimal(0.1)  # 传入浮点型数据
print(a)  # 0.1100000000000000149880108324
print(len('1100000000000000149880108324'))  # 28

decimal.getcontext().prec = 15  # 控制输出精度为15位
b = decimal.Decimal(1) / decimal.Decimal(7)
print(b)  # 0.142857142857143
print(len('142857142857143'))  # 15

1.3 复数complex()

a=3
b=3.14
f=complex(a,b)   #f为一个复数,其中a为复数的实数部分,b为实数的虚数部分
print(f,type(f))   #输出结果为 (3+3.14j)  <class 'complex'>

2 布尔值bool()

布尔值的结果只有两种,即真(True)和假(False)。非零非空(None)即为真。

# 例如:
a = 0  #整形0
b = 0.0  #浮点型0
c = ''  #空字符串
d = []  #空列表
e = {}  #空字典
f = ()  #空元组
print(bool(a))
print(bool(b))
print(bool(c))
print(bool(d))
print(bool(e))
print(bool(f))

结果如下图
在这里插入图片描述

3 字符串str()

字符串是字符的序列表示,用一对单引号(’)、双引号(")或三引号(’’’)构成
单引号和双引号作用相同,都是用来表示单行字符串,而三引号则可表示多行字符串


# 例如:
a = 'i love you!'
b = "i love you!"
c = '''
    i love you!
    can you be my girl?
    '''
print(a)  #输出结果为 i love you!
print(b)  #输出结果为 i love you!
print(c)  #输出结果为 i love you!
          #         can you be my girl?

特殊情况

# 例如:
a = "I'm JJ"  #若字符串中间有单引号,应使用双引号
print(a)  #输出结果为 I'm JJ

基本转换

c='3'
c1=int(c)   #把c转换为整形
print(c1,type(c1))  #输出结果为 3 <class 'int'>
c2=float(c)  #把c转换为浮点型
print(c2,type(c2))  #输出结果为 3.0 <class 'float'>

3.1 字符串的常用方法:

3.1.1 索引、切片取值

正序切片

a='love'
print(a[2])  #索引取值  输出结果为 v
print(a[1:3])  #切片取值  输出结果为 ov

逆序切片

#例如
a = 'love'
print(a[::-1]) #全部逆序
print(a[-1:-3:-1]) #逆序切片

结果如下图
在这里插入图片描述

3.1.2 split()方法
#S.split(sep=None, maxsplit=-1) -> list of strings
# 这是split()的用法,参数sep是个字符串,参数maxsplit是指最多切几次,
# ->list of strings是指返回一个内部元素为字符串的列表
# 例如:
a='i,love,you'
print(a.split(","))  # 输出结果为  ['i', 'love', 'you']
print(a.split(",",1))  # 输出结果为  ['i', 'love,you']
3.1.3 capitalize() 方法
#S.capitalize() -> str 
#将字符串首字母改为大写
# 例如:
a='i love you'
print(a.capitalize())  # 输出结果为  I love you

3.1.4 count() 方法
#S.count(sub[, start[, end]]) -> int
#统计sub字符串在字符串S中出现的次数
# 例如:
a='i love you'
print(a.count("o"))  # 输出结果为 2
print(a.count("o",0,7))  #输出结果为 1

3.1.5 可迭代

# 例如:
a='i love you'
for i in a:
    print(i,end='') #输出结果为 i love you ;end=''表示输出不换行

3.1.6 strip()方法
# 例如:
a = " I'm JJ "#若字符串中间有单引号,应使用双引号
b = "i love you!"
print(a)
print(a.strip())  #删除两端空格
print(a.lstrip()) #删除左端空格
print(a.rstrip()) #删除右端空格
print(b.strip("you!")) #删除两端指定字符串
print(b.strip("i ")) #删除两端指定字符串

运行结果如下图
运行结果

3.1.7 长度len()

len()为python内置方法

# 例如:
a = "I'm JJ"#若字符串中间有单引号,应使用双引号
print(len(a)) #输出结果为 6
3.1.8 字符串的拼接

直接用+进行拼接

#例如:
eg="20191202"
y=eg[0:4]+'年' #用+进行字符串的拼接
m=eg[4:6]+'月'
d=eg[6:8]+'日'
print(y,m,d) #输出结果为 2019年 12月 02日

用S.join(iterable) -> str进行拼接

# 例如
a = ['i', 'love', 'you', '!']
b = ' '.join(a)  # 以空格(字符串)进行数据拼接
print(b)  # i love you !

3.2 其他方法:

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值