python const无法使用_为什么Python中没有’const’?

C和Python属于两种不同类别的语言。

前者是静态类型的。后者是动态的。

在静态类型语言中,类型检查器能够推断每个表达式的类型,并在“编译”阶段检查它是否符合给定的声明。

在动态类型语言中,所需的类型信息在运行时不可用。而一个表达式的类型可能会从一个运行到另一个运行。当然,您可以在程序执行期间添加类型检查。这不是Python中的选择。这有利于“鸭打字”。缺点是解释器无法检查类型的正确性。

关于const关键字。这是一个类型修饰符。限制允许使用的变量(有时修改允许的编译器优化)。在运行时检查动态语言似乎效率很低。首先分析,这将意味着检查变量是否为每个感染的const。这可以进行优化,但即使如此,这是否值得?

除了技术方面,不要忘记每种语言都有自己的哲学。在Python中,通常的选择是赞成“约定”而不是“限制”。例如,常数应在所有大写上拼写。没有技术执法。这只是一个约定如果你遵循它,你的程序将按照其他程序员的预期行为。如果你决定修改一个“常量”,Python就不会抱怨。但是你应该觉得自己在做错事了。你打破一个约定也许你有这样做的原因。也许你不应该有你的责任

最后要注意的是,在动态语言中,程序的“正确性”更多的是单元测试的责任,而不是编译器的手。如果您确实遇到困难,您会发现一些“代码检查器”。那些是PyLint,PyChecker,PyFlakes …

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值