Python_0基础:4.类型转换

作者: liang_820 | 来源:发表于2022-05-23 14:24 被阅读0次
函数 说明
int(x) 将x转换为一个整数
float(x) 将x转换为一个浮点数
str(x) 将x转换为字符串
bool(x) 将x转换为布尔值

强制类型转换为谁,就写什么方法


一、转换为整型

  • str - - - > int
a = '123'
print(type(a))  # <class 'str'>
b = int(a)
print(b)    # 123
print(type(b))  # <class 'int'>
  • float - - - > int

将float转换为整型,返回的是小数点前的数据

 a = 1.63  
 print(type(a))  # <class 'float'>  
 b = int(a)    
 print(b)    # 1  
 print(type(b))  # <class 'int'>
  • bool - - - > int

True ---> 1 False ---> 0

a = True  
print(type(a))  # <class 'bool'>  
b = int(a)  
print(b)    # 1  
print(type(b))  # <class 'int'>
  • 注意:
# 以下两种情况会转换失败

 a = '123.456'  
 print(type(a))  # <class 'str'>
 b = int(a)  
 print(type(b))  
  

 a = '12ab'  
 print(type(a))  # <class 'str'>
 b = int(a)  
 print(type(b))

# 123.456 和 12ab 字符串,都包含非法字符,不能被转换成整数,会报错!!!

二、转换为浮点数

当我们在爬虫的时候大部分获取的都是字符串数据类型

  • str - - - > float
a = '12.34'  
print(type(a))  # <class 'str'>  
b = float(a)  
print(b)    # 12.34  
print(type(b))  # <class 'float'>  
  • int - - - > float
a = 666  
print(type(a))  # <class 'int'>  
b = float(a)  
print(b)    # 666.0  
print(type(b))  # <class 'float'>

三、转换为字符串

强制类型转换为字符串的方法是:str()

  • int - - - > str
a = 80
print(type(a))  # <class 'int'>
b = str(a)
print(b)    # 80
print(type(b))  # <class 'str'>
  • float - - - > str
a = 1.2
print(type(a))  # <class 'float'>
b = str(a)
print(b)    # 1.2
print(type(b))  # <class 'str'>
  • bool - - - > str
a = True
print(type(a))  # <class 'bool'>
b = str(a)
print(b)    # True
print(type(b))  # <class 'str'>

四、转换为布尔型

  • int - - - > bool

如果对非0的整数(int 包含整数和负数)进行bool类型转换,那么就全都是True

a = 1
print(type(a))  # <class 'int'>
b = bool(a)
print(b)    # True
print(type(b))  # <class 'bool'>
a = 2
print(type(a))  # <class 'int'>
b = bool(a)
print(b)    # True
print(type(b))  # <class 'bool'>
a = -1
print(type(a))  # <class 'int'>
b = bool(a)
print(b)    # True
print(type(b))  # <class 'bool'>

在整数的范围内,0强制类型转换为bool类型的结果是False

a = 0
print(type(a))  # <class 'int'>
b = bool(a)
print(b)    # False
print(type(b))  # <class 'bool'>
  • float - - - > bool

将浮点数转换为bool类型的数据的时候,正的浮点数和负的浮点数的结果是True

a = 1.0
print(type(a))  # <class 'float'>
b = bool(a)
print(b)    # True
print(type(b))  # <class 'bool'>
a = -1.0
print(type(a))  # <class 'float'>
b = bool(a)
print(b)    # True
print(type(b))  # <class 'bool'>

如果是0.0,那么结果是False

a = 0.0
print(type(a))  # <class 'float'>
b = bool(a)
print(b)    # False
print(type(b))  # <class 'bool'>
  • str - - - > bool

只要字符串中有内容,那么在强制类型转换为bool的时候,那么就返回True

a = '网红截聊天的图'
print(type(a))  # <class 'str'>
b = bool(a)
print(b)    # True
print(type(b))  # <class 'bool'>
a = '    '
print(type(a))  # <class 'str'>
b = bool(a)
print(b)    # True
print(type(b))  # <class 'bool'>

如果字符串中什么都没有的情况下,那么返回的就是False

a = ''
print(type(a))  # <class 'str'>
b = bool(a)
print(b)    # False
print(type(b))  # <class 'bool'>
  • list - - - > bool

只要列表中有数据,那么强制类型转换为bool的时候,就返回True

a = ['吴亦凡', '鹿晗', '张艺兴', '黄子韬']
print(type(a))  # <class 'list'>
b = bool(a)
print(b)    # True
print(type(b))  # <class 'bool'>

如果列表中什么数据都没有的情况下,那么返回的就是False

a = []
print(type(a))  # <class 'list'>
b = bool(a)
print(b)    # False
print(type(b))  # <class 'bool'>
  • tuple - - - > bool

只要元组中有数据,那么强制类型转换为bool的时候,就会返回True

a = ('李逵', '林冲', '卢俊义', '武松', '潘金莲')
print(type(a))  # <class 'tuple'>
b = bool(a)
print(b)    # True
print(type(b))  # <class 'bool'>

如果元组中没有数据的话,那么就返回False

a = ()
print(type(a))  # <class 'tuple'>
b = bool(a)
print(b)    # False
print(type(b))  # <class 'bool'>
  • dict - - - > bool

只要字典中有内容,那么在强制类型转换为bool的时候,就会返回True

a = {'name': '武大郎'}
print(type(a))  # <class 'dict'>
b = bool(a)
print(b)    # True
print(type(b))  # <class 'bool'>

如果在字典中没有数据的话,那么返回的就是False

a = {}
print(type(a))  # <class 'dict'>
b = bool(a)
print(b)    # False
print(type(b))  # <class 'bool'>
  • 什么情况是False???
print(bool(0))      # False
print(bool(0.0))    # False
print(bool(''))     # False
print(bool(""))     # False
print(bool([]))     # False
print(bool(()))     # False
print(bool({}))     # False

相关文章

  • Python_0基础:4.类型转换

    函数说明int(x)将x转换为一个整数float(x)将x转换为一个浮点数str(x)将x转换为字符串bool(x...

  • Python自学笔记——3.基础数据类型转换

    基础数据类型转换 数据类型转换的形式自动类型转换强制类型转换 可变数据类型: 列表, 字典, 集合不可变数...

  • 类型

    基础类型4类8种 类型转换

  • C++中的类型转换函数

    基础类型转换 标准数据类型之间会进行隐式的类型安全转换 转换规则如下:(char -> short)-> int ...

  • kotlin类型转换 - as

    这里暂不考虑基础类型转换 定义 【引用类型转换】 引用类型的类型转换只能发生父子之间转换子类可以自动转换成父类的对...

  • JS数据类型转换(2)

    在上一篇的js数据类型转换(1)中,只考虑了基础数据类型之间的相互转换,未考虑对象和基础类型的转换,本篇做介绍。 ...

  • python基础

    基础 基本数据类型:intfloatstrbool,类型转换:int()float()str() if函数

  • Java编程基础(4)

    Java基础知识:1.数据类型转换 2.流程控制方法 数据类型转换 数据类型的转换是在所赋值的数值类型和被变量接收...

  • Java基础知识2

    Java基础知识2 类型转换 由Java是强类型语言 所以要进行有些运算的时候 需要用到类型转换 低 ------...

  • JS数据类型

    1数值类型image.png 2.布尔值image.png 3.强制类型转换image.png 4.转换成Numb...

网友评论

    本文标题:Python_0基础:4.类型转换

    本文链接:https://www.haomeiwen.com/subject/jvprprtx.html