类型不同怎么计算?

入门教程、案例源码、学习资料、读者群

请访问: python666.cn

大家好,欢迎来到 Crossin的编程教室 !

在 Python 中,每个数据都有明确的类型。最常见的数据类型有:

  • str - 字符串

  • int - 整数

  • float - 浮点数,也就是小数

  • bool - 布尔类型,一种用来表示真与假两种逻辑状态的类型

还有一些复合数据类型,比如:

  • list - 列表

  • dict - 字典

  • tuple - 元组

有些数据虽然“看起来”差不多,但如果类型不同,可以执行的操作也就不相同。

比如通过 input 获取到的输入一律是 str 字符串类型。

即使用户输入一个数字,比如 3,但程序拿到的是一个字符串 3,而不是数字 3,它和数字 1 不能直接进行加法运算,否则就会报错。

faa89c5bcd51ded1af3cd96fb24e3e59.png

如果想要对获取到的数值进行数学运算,常用的解决办法就是做一次类型转换,让程序知道它是一个数字。

a = input()
a = int(a)
a = a + 1
print(a)

数据类型虽然增加了限制,但让程序可以将数据与合适的操作相匹配,减少了程序出错的可能。

即使有些语言不做强制的类型检查,但程序在存储数据时依旧需要按照某种类型的格式来进行,比如字符 3 和数字 3 对于计算机来说就是不同数据,没法按照同样的方式来存储。只不过这些语言会在使用时尝试把它转成可用的类型。这样在开发时更灵活,但也隐藏了风险。

一个冷知识:之前某知名小破站崩溃3小时,就是因为一个字符串 0 和数字 0 的误用。(lua语言不会对类型做强制检查,当 b 为字符 '0' 或者 nan 时程序都可以正常运行,但不会进入 if 返回,于是陷入死循环)

e652d7a08349906824f01bd96176c29d.png

另外,也不是类型不同就一定不能放一起做计算,有些计算就是在特定的类型之间进行的。比如字符串和数字可以做乘法:

print('3' * 2)

结果:

33

对于 Python 的类型,你还要什么想了解的内容?欢迎在留言区讨论。


以下是视频时间,欢迎大家关注、点赞、转发:


Crossin的第2本书《码上行动:利用Python与ChatGPT高效搞定Excel数据分析》已经上市了。

67d8f37e05ba9ca7c96f657067f09f0c.jpeg

本书从 Python 和 Excel 结合使用的角度讲解处理分析数据的思路、方法与实战应用。不论是希望从事数据分析岗位的学习者,还是其他职业的办公人员,都可以通过本书的学习掌握 Python 分析数据的技能。书中创新性地将 ChatGPT 引入到教学当中,用 ChatGPT 答疑并提供实训代码,并介绍了使用 ChatGPT 辅助学习的一些实用技巧,给学习者带来全新的学习方式。

公众号的读者朋友们购买后可在后台联系我,加入读者交流群,Crossin会为你开启陪读模式,解答你在阅读本书时的一切疑问。

感谢转发点赞的各位~


_往期文章推荐_

为什么需要input?


如需了解付费精品课程教学答疑服务

请在Crossin的编程教室内回复: 666

35daa6f208e632d34291b81918cf6b23.jpeg

猜你喜欢

转载自blog.csdn.net/qq_40523737/article/details/132095220
今日推荐