几乎是关键词

偶尔我随意写关于较少定义的事情,说
主要是错误的事情.这篇文章主要是聊天,如果您不聊天
有兴趣,请忽略它.
Python适合新手程序员,但其中一些
特征会像引用的变量一样混淆它们
用名称(可以用一种语言来解决
始终操纵值),浮点数的有限性质
(可以用SMART中使用的间隔算术来部分解决
方式,即使结束可能比python浮标慢)
所有语言的案例敏感性(在自然语言中,案例是
通常无关),没有整数中没有理性数字
分区,代码格式的精度
凹痕,懒惰和渴望之间的"人造"差异
事物,愚蠢的元素语法,封闭的一些问题
部分来自自动创建变量名称,许多
标准库中存在的不一致之处.python 3.0
解决了其中一些问题,尤其是较小问题(因为
示例"非本地"关键字解决方法等).
如果您看一下Python新闻组,您可以看到新手
一直在犯许多类似的错误.一种适合的语言
新手可以适应避免那些最常见的错误(但是
今天Python变得更大,更复杂,更适合真实
程序员,更少用于编程新手.这可能是不可避免的
在一种具有商业成功的语言的演变中).中的一个
您经常看到的错误是内置事物的重建,例如地图,
列表等(Python 3.0再次将其中一些名称变成关键字,
避免部分问题).
因此,您可以看到这样的代码,可能会导致程序中的错误
由新手撰写:
list = [x*x for x in范围(100)
避免此类错误的一种可能方法是转动所有这些名称
"列表","映射","过滤器","自我"等关键字.但这可能有
一些缺点(好吧,我想我想将"自我"作为关键字,
看到所有Python的书籍如何强烈建议不要使用不同的名称
来自"自我").中间解决方案是更改python,以便
允许您仅想要的那些半键词,并且
知道您在做什么,并在顶部发表了一种评论
模块:
#rebinding = true
这使您可以这样做:
list = [x*x for x in range(100)]
默认情况下,重新启动是错误的,因此会产生一个语法:
list = [x*x for x in range(100)]
这可能是一个愚蠢的主意.为语言设计好语法不是
一点简单.
请注意,广泛使用的方案实施,Drscheme,实施
各种亚语适合新手,几乎是新手或低 -
经验丰富的程序员.专家可能是语法
新手错误.我不太喜欢这个功能,我更喜欢
自由,但出于纯粹的学习目的,它可能有其位置.所以
我所说的关于"几乎关键字"的话不是tot 盟友新
主意 :-)
再见,
bearophile

# 回答1

bedeydebeyde theidge@lycos.com写道:
我不相信"自我"成为关键字.强迫第一个论点
出于多种原因而被命名为"自我"的方法失败(例如
ClassMethod/staticMethod)所以我真的没有看到它的好处
以任何方式特殊.
对于其他名称,这将具有允许的优势
编译器以优化对内置的访问,这应该提供略有速度
改进,我认为也可以使某些人的生活更轻松
实现(尤其是诸如"当地人()"之类的东西.
半程房屋将发出任何使用名称的警告
掩盖保留的内置之一,但仅优化示波器中的查找
编译器看不到这样的掩饰:这将阻止您
通过将名称注入全局名称空间,从而覆盖内置
外部模块,但没有其他破坏现有代码.
当然,任何这些都会打破一些现有的代码,因此不是
将要发生.

标签: python

添加新评论