变量
变量解包
变量解包(unpacking)是Python的一种特殊赋值操作,允许把一个可迭代对象(比如列表)的所有成员,一次性赋值给多个变量。
# 普通解包 a, b, c = [1, 2, 3] print(a, b, c) # 1 2 3 a, (b, c) = [1, [2, 3]] print(a, b, c) # 1 2 3 # 动态解包 a, *b, c = [1, 2, 3, 4] print(a, b, c) # 1 [2, 3] 4 # 也可在任何循环语句里使用 for a, b in [[1, 2], [3, 4]]: print(a, b) # 1 2 3 4
单下划线变量名
单下划线变量名,常作为一个无意义的占位符出现在赋值语句中,是大家约定俗成的一种用法。如果想在解包赋值时忽略某些变量,就可以使用_
作为变量名:
a, *_, b = [1, 2, 3, 4] print(a, b) # 1 4
在Python交互式命令行里,_
变量还有一层特殊含义:默认保存上个表达式的返回值。
>>> 'abc'.upper() 'ABC' >>> print(_) ABC
数值与字符串
浮点数精度问题
Python提供的内置模块decimal,在做浮点数计算时不会损失任何精度。在使用Decimal的过程中,必须使用字符串来表示数字。
from decimal import Decimal print(Decimal("0.1") + Decimal("0.2")) # 0.3
布尔值其实也是数字
布尔类型其实是整型的子类型,在绝大多数情况下,True和False这两个布尔值可以直接当作1和0来使用。
numbers = [1, 2, 4, 5, 7] count = sum(i % 2 == 0 for i in numbers) print(count) # 2 个偶数
- 转载请保留原文链接:Python特殊骚操作高级用法 https://aboss.top/post/441/
- 本站所有资源文章出自互联网收集整理,本站不参与制作,如果侵犯了您的合法权益,请联系本站我们会及时删除。
- 本站发布资源来源于互联网,可能存在水印或者引流等信息,请用户擦亮眼睛自行鉴别,做一个有主见和判断力的用户。
- 本站资源仅供研究、学习交流之用,若使用商业用途,请购买正版授权,否则产生的一切后果将由下载用户自行承担。
- 联系方式(#替换成@):mail#aboss.top
评论