还在撸Python3.7,Python3.9新鲜出炉,菜鸟哥带你尝鲜解读


是不是感觉python3.7刚刚使用,3.8还没捂热乎,怎么3.9这么快就来了! 其实版本迭代速度快,说明这门编程语言的活力强,对于我们使用者来说是件好事,而且谁也没说必须使用最新版本,我到现在仍然在用python3.6。 但是呢,新版本出来了一定要体验一下,看看都有哪些改动和优化,说不定哪个新特性就能解决你手里的大问题。

1

新的特性

1).import异常

我们在进行模块的相对引用时,可能会遇到这个错误提示:ValueError: Attempted relative import beyond toplevel package。简单来说这个问题是由于引用的模块超出了顶层目录的层级结构所导致的,这个问题不理解也没关系,因为跟python3.9的特性更改关系不大。

我们只要知道,python3.9中对这类错误的raise类型进行了调整,当遇到这类错误的时候,会提示ImportError而不再是ValueError,PR如图所示:

这个改动的最大好处就是当遇到这类问题时,系统会明确告诉你是由import模块引发的。

2).__file__路径

我们知道,在python中可以使用__file__、sys.argv[0]、sys.path[0]等方法获取当前脚本的所在路径,只不过在命令行模式下使用前两个命令获取到的都是相对路径,只有第三个命令可以获取脚本的绝对路径。 我们用以前版本的的python运行下面这段代码:
import sys
print(__file__)
print(sys.argv[0])
print(sys.path[0])

得到结果如下:

而如果使用python3.9来运行结果就不一样了(下图),他对__file__和sys.argv[0]都做了调整,使其返回值全部为绝对路径。

3).replace修复

replace是字符串处理中的常用函数,他的原型其实是这样的:

  • 6
    点赞
  • 22
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值