数据类型转换函数

函数名称 描述说明
bool(obj) 获取指定对象obj的布尔值
str(obj) 将指定对象obj转换成字符串类型
int(x) 将x转换成int类型
float(x) 将x转换成float类型
list(sequence) 将序列转换成列表类型
tuple(sequence) 将序列转换成元组类型
set(sequence) 将序列转换成集合类型

 

 

 

 

 

 

 

 

print('非空字符串的布尔值',bool('hello'))
print('空字符串的布尔值',bool(''))
print('空列表的布尔值',bool([]))
print('空列表的布尔值',bool(list()))
print('空元组的布尔值',bool(()))
print('空元组的布尔值',bool(tuple()))
print('空集合的布尔值',bool(set()))
print('空字典的布尔值',bool({}))
print('空字典的布尔值',bool(dict()))
print('*'*50)
print('非0数值型的布尔值',bool(123))
print('整数0的布尔值',bool(0))
print('浮点数0.0的布尔值',bool(0.0))

# 空字符串,空对象,None,数值为0的布尔值为False,而其他有值的布尔值都是True
print('*'*50,'str()转换','*'*50)
lst=[10,20,30]
s=str(lst)
print(s,type(s))

print('*'*50,'int()转换','*'*50)
print(int(80.5)+int('90'))
# int()转换整数时,参数为字符串则必须为整数值类型,不能为浮点数或其他字符。参数为浮点数时,则直接会舍弃掉小数。

print('*'*50,'float()转换','*'*50)
print(float(20)+float('3.14'))

print('*'*50,'float()转换','*'*50)
s1='hello'
print(list(s1))
seq=range(1,11)
print('转换为列表',list(seq))
print('转换为元组',tuple(seq))
print('转换为集合',set(seq))

常用的数学函数

函数名称 描述说明
abs(x) 获取x的绝对值
divmod(x,y) 获取x与y的商和余数
max(sequence) 获取sequence的最大值
min(sequence) 获取sequence的最小值
sum(iter) 对可迭代对象进行求和运算
pow(x,y) 获取 x的y次幂
round(x,d) 对x进行保留d位小数,结果四舍五入

 

 

 

 

 

 

 

 

print('绝对值',abs(100),abs(-100.6),abs(0))
print('商和余值',divmod(10,3))
print('最大值',max('hello'))
print('最大值',max([10,9,29,7,5]))
print('最大值',min('hello'))
print('最大值',min([10,9,29,7,5]))
print('求和',sum([10,9,29,7,5]))
print('x的y次幂',pow(3,2))

print('四舍五入',round(3.1415)) # 3 只有一位参数,则表示取整
print('四舍五入',round(3.6415)) # 4
print('四舍五入',round(3.1415,2))# 保留两位小数
print('四舍五入',round(31233.1415,-1))# -1 对个位进行四舍五入
print('四舍五入',round(31233.1415,-2))# -2 对十位进行四舍五入

常用的迭代器操作函数

函数名称 描述说明
sorted(iter) 对可迭代对象进行排序
reversed(sequence) 反转序列生成新的迭代器对象
zip(iter1,iter2) 将iter1与iter2打包成元组并返回一个可迭代的zip对象
enumerate(iter) 根据iter对象创建一个enumerate对象
all(iter) 判断可迭代对象iter中所有元素的布尔值是否都为True
any(iter) 判断可迭代对象iter中所有元素的布尔值是否都为False
next(iter) 获取迭代器的下一个元素
filter(function,iter) 通过指定条件过滤序列并返回一个迭代器对象
map(function,iter) 通过函数function对可迭代对象iter的操作返回一个迭代器对象

 

 

 

 

 

 

 

 

 

 

# sorted 排序
lst=[10,9,19,8,7,44,3]
asc_lst=sorted(lst)
desc_lst=sorted(lst,reverse=True)
print('原列表',lst)
print('升序',asc_lst)
print('降序',desc_lst)

#reversed() 反向
res_lst=reversed(lst)  # <class 'list_reverseiterator'>结果是个迭代器对象,需要转换才能看到内容
print(type(res_lst))
print(list(res_lst))

# zip
a=[1,2,3,4]
b=['hello','python','world']
zipobj=zip(a,b)
print(type(zipobj)) #<class 'zip'>
#print(list(zipobj)) # [(1, 'hello'), (2, 'python'), (3, 'world')]

#enumerate
enum_obj=enumerate(lst,start=1)
print(type(enum_obj))
print(tuple(enum_obj))

#all  相当于元素之间and连接判断
lst2=[10,'',20]
print(all(lst)) #True
print(all(lst2)) #False 当列表中有一个元素的布尔值为Fasle,结果为False

#any 相当于元素之间or连接判断
print(any(lst2)) #True 当列表中有一个元素的布尔值为True,结果为True

#next
print(next(zipobj))
print(next(zipobj))
print(next(zipobj))

#filter
def func(num):
    return num%2==1
obj=filter(func,range(10))  # 这里的func是作为参数,而不是调用。因此不要加括号  range(10)中的元素都执行func()函数,结果为True的留下来
print(list(obj))

#map
def upper(x):
    return x.upper()
s=['hello','world','python']
map_obj=map(upper,s)  #s中的所有元素都要执行一次upper()函数,然后存下来
print(type(map_obj))
print(list(map_obj))

常用的其他内置函数

函数名称 描述说明
format(value,format_spec) 将value以format_spec格式进行显示
len(s) 获取s的长度或s中元素的个数
id(obj) 获取对象的内存地址
type(x) 获取x的数据类型
eval(s) 执行s这个字符串所表示的python代码

 

 

 

 

 

 

# format
print(format(3.14,'20')) #数值默认右对齐
print(format('hello','20')) #字符串默认右对齐
print(format('hello','*<20')) # < 左对齐 * 表示的填充符 20 表示的是显示的宽度
print(format('hello','*>20')) # > 右对齐 * 表示的填充符 20 表示的是显示的宽度
print(format('hello','*^20')) # ^ 居中对齐 * 表示的填充符 20 表示的是显示的宽度

print(format(3.1415926,'.2f')) # 3.14
print(format(20,'b')) #二进制
print(format(20,'o')) #八进制
print(format(20,'x')) #十六进制
print(format(20,'X')) #十六进制

print('*'*50)
# len
print(len('helloworld'))  #字符串的长度
print(len([10,20,30,40])) # 列表中元素的个数

print('*'*50)
# id
print(id(10))  #id 查看对象的内存地址
print(id('hellworld'))

print('*'*50)
# type
print(type(10)) # type 显示对象的数据类型
print(type('helloworld'))

print('*'*50)
# eval
print(eval('10+20')) # 30
print(eval('20>30')) # False

 

 posted on 2023-12-19 20:05  会飞的金鱼  阅读(22)  评论(0)    收藏  举报