[返回电脑前线首页]·[所有跟帖]·[ 回复本帖 ] ·[热门原创] ·[繁體閱讀]·[版主管理]
Python 3.8.0 稳定版发布,来看看Python 3.8.0的新功能吧
送交者: pchome[♂☆★★★岛徒★★★☆♂] 于 2019-10-15 20:07 已读 3912 次 1 赞  

pchome的个人频道

作为现在比较流行的开源免费编程语言 Python 我想对于开发人员肯定很不陌生。Python 是一种编程语言,语法优美,简单易学,功能强大。比如我们常听说的网络爬虫,大多都是使用 Python 编写开发的。近日 python.org官方发出了稳定版(stable),是时候看看 Python3.8 带给我们的新功能了。 6park.com

6park.com

Python 3.8.0 新功能新的赋值表达式(:=)

:= 可将值赋给变量,由于它与海象的眼睛和象牙很像,因此被亲切地称为“海象操作符” 。

在此示例中,赋值表达式有助于避免调用两次 len():
#之前
if n>len(a):
print(f"List is too long ({len(a)} elements, expected <= 10)") 6park.com

#现在
if (n := len(a)) > 10:
print(f"List is too long ({n} elements, expected <= 10)")

该运算符在 while 循环也很有用,该循环计算一个值以测试循环终止,然后在循环体中再次需要相同的值:
while (block := f.read(256)) != '':
process(block)

使用海象运算符可以清理和降低代码复杂性并提高可读性。
强制位置参数

在以下示例中,参数a和b是仅位置的,而c或d可以是位置或关键字,而e或f必须是关键字:
def f(a, b, /, c, d, *, e, f):
print(a, b, c, d, e, f)

以下是有效的函数调用:
f(10, 20, 30, d=40, e=50, f=60)

输出:10 20 30 40 50 60

但是,这些是无效的调用:
f(10, b=20, c=30, d=40, e=50, f=60) # b 不能是关键字参数
f(10, 20, 30, 40, 50, f=60) # e 必需是关键字参数
支持 f 格式化字符串

=在f 字符串中添加了一个说明符,在f字符串表达式的末尾添加=会打印f 表达式本身的文本,后跟值。例如: f'{expr=}'将扩展为表达式的文本,等号,然后扩展为求值表达式的表示形式。例如:
>>> user = 'eric_idle'
>>> member_since = date(1975, 7, 31)
>>> f'{user=} {member_since=}'
"user='eric_idle' member_since=datetime.date(1975, 7, 31)"

常用的f字符串格式说明符允许对表达式结果的显示方式进行更多控制:
>>> delta = date.today() - member_since
>>> f'{user=!s} {delta.days=:,d}'
'user=eric_idle delta.days=16,075'

= 说明符将显示整个表达式,从而可以示出的计算:
>>> print(f'{theta=} {cos(radians(theta))=:.3f}')
theta=30 cos(radians(theta))=0.866

更多新特性可以查看Python官方文档:https://docs.python.org/3.8/whatsnew/3.8.html

喜欢pchome朋友的这个贴子的话, 请点这里投票,“赞”助支持!
[举报反馈]·[ pchome的个人频道 ]·[-->>参与评论回复]·[用户前期主贴]·[手机扫描浏览分享]·[返回电脑前线首页]
帖子内容是网友自行贴上分享,如果您认为其中内容违规或者侵犯了您的权益,请与我们联系,我们核实后会第一时间删除。

所有跟帖:        ( 主贴楼主有权删除不文明回复,拉黑不受欢迎的用户 )


用户名:密码:[--注册ID--]

标 题:

粗体 斜体 下划线 居中 插入图片插入图片 插入Flash插入Flash动画


     图片上传  Youtube代码器  预览辅助

手机扫描进入,浏览分享更畅快!

楼主本栏目热帖推荐:

>>>>查看更多楼主社区动态...






[ 留园条例 ] [ 广告服务 ] [ 联系我们 ] [ 个人帐户 ] [ 版主申请 ] [ Contact us ]