有谁知道为什么python允许您在对象和称为“”的方法名称之间添加无限量的空格。?
这里有些例子:
>>> x = []
>>> x. insert(0, 'hi')
>>> print x
['hi']
另一个例子:
>>> d = {}
>>> d ['hi'] = 'there'
>>> print d
{'hi': 'there'}
对于类也是如此。
>>> myClass = type('hi', (), {'there': 'hello'})
>>> myClass. there
'hello'
我使用的是python 2.7,我尝试过进行一些Google搜索并查看python源代码,但找不到任何允许这样做的原因。
该.
就像一个运营商。你可以做obj . attr
同样的方式,你可以做this + that
或this * that
等。该语言参考说:
除逻辑行的开头或字符串文字外,空格字符空格,制表符和换页符可互换使用以分隔标记。
由于该规则是如此笼统,因此我将假定执行此代码的代码是在解析过程的早期。它没有特定于.
。它只是忽略除行首或字符串内的所有空白。
谢谢你抽出时间。 问候,
问题内容: 我刚刚开始学习Python,并在Python中遇到了 “命名空间” 概念。虽然我了解了它的本质,但无法理解这个概念的严重性。 网上的一些浏览显示,反对PHP的原因之一是它没有对名称空间的本地支持。 有人可以解释如何使用名称空间以及此功能如何使编程更好 (不只是在Python中,因为我假设名称空间的概念不限于特定语言)。 我主要来自Java和C编程背景。 问题答案: 命名空间是一种实现范
根据Spring Doc API http://docs.Spring.io/Spring-framework/docs/current/javadoc-api/index.html?org/springframework/web/context/contextloaderlistener.html- 这个(ContextLoaderListener)监听器应该注册在web.xml中的Log4jC
问题内容: 什么是PHP命名空间? 一般而言,命名空间是什么? 一个有例子的Layman答案会很棒。 问题答案: Namespacing对函数和类起作用,而作用域对变量起作用。它允许您在同一程序的不同部分中使用相同的函数或类名称,而不会引起名称冲突。 简单来说, 将名称空间视为一个人的姓氏 。如果有两个人名为“ John”,则可以使用他们的姓氏来区分他们。 场景 假设您编写了一个使用名为的函数的应
问题内容: For 输出,而for 一些地址输出。当我们想要输出值时,我们可以像使用一样使用它们。 我只是想知道为什么我们不能直接调用以获得值。这样做不是更直观,更方便吗?是什么导致对和的不同处理? 问题答案: 数组和数组列表之间的主要区别在于,数组列表是用Java编写的类,具有自己的实现(包括覆盖的决定),而数组是语言规范本身的一部分。JLS 10.7 特别指出: 数组类型的成员都是以下所有:
问题内容: 直接使用和直接使用父类名称之间有区别吗?例如: 是否有内部之间的差异和? 问题答案: 在 这种情况下 不是。但是 通常 ,尤其是当您使用 多重继承时 ,按照文档中指定 的 方法 委托给 方法解析顺序(MRO)中 的下一个对象 : 返回将方法调用委托给类型的父级或同级类的 代理对象 。这对于访问已在类中重写的继承方法很有用。搜索顺序与所使用的顺序相同,只是类型本身被跳过。 类型的 属性列