【问题标题】:How do you read documentation in python你如何阅读python中的文档
【发布时间】:2018-04-25 00:36:41
【问题描述】:

提醒:我大约 2 小时前开始使用 python 2.6。一直在做Java、C等到现在

TL;DR

在Java中我想了解什么是对象,我看javadoc here 我在哪里可以找到关于函数在 python 中的作用的类似清晰文档?


长篇大论

我明白以下内容

  1. 变量“a”不限于给定的数据类型。
  2. 变量“a”可以在不同的时间点保存“int”和“float”。

最后得到了一个简单的代码,出于好奇检查了type()

a = 1     # type(a) is int
a = 1.2   # type(a) is float
a = 1     # type(a) is int

想了解python中的type()到底做了什么,发现type function 读作 'class type(object)' 但Built-in data-types 没有提及 'class' 或 'object'

当我阅读“类类型(对象)”时,我将其解释为

  1. 有一个函数叫做'type'
  2. 这接受一个对象作为参数
  3. 返回一个类

但是 python 文档与“返回对象的类型。返回值是类型对象”相矛盾。并且文档中的代码 sn-p 似乎也创建了一个没有意义的类。

a = False # type(a) returns 'bool'

Built-in data-types 谈论布尔值,那么 bool 文档在哪里?

【问题讨论】:

  • type 本身就是一个类(类似于 Java 的 java.lang.Class)。对于每种类型(可能是 Python 中的类或编译后的二进制扩展中的类型),都存在一个类型为 type 的对象。
  • 如果可能,您应该从更新的 Python 版本开始,至少 2.7,但更好的是 3.4 或更高版本。
  • @MichaelButscher,关于版本:我被官方要求从here学习python。该教程向我推荐了虽然我们现在建议“避免”使用 Python 3,但要认识到它是未来,因为所有新功能都只会出现在那里。
  • A 写了another answer 关于type,您可能会感兴趣。
  • 另外,Python 文档中有 this page 讨论对象和类型,包括 bool

标签: python


【解决方案1】:

想了解 python 中 type() 的真正作用

在 Python 中,一切都是对象。所以当你看到这个时:

class type(object)

它告诉你它接受一个对象(通常)并返回一个“类”,它也是一个对象。 Python 中的类是描述其他对象的对象——如果您愿意,可以称为“元对象”。这与例如相反。 C++,其中一个类根本不是一个对象(它不能被存储)。

在 Python 中,类型是对象,例如,type(type(type('hello'))) 为您提供 type(因为 type() 函数的结果始终是类型对象)。

【讨论】:

  • 确实理解了答案,但仍有一个很大的疑问,Data Types 没有提及对象。那么对象是一种数据类型吗?还是没有?
  • @SrinathGanesh object 是一种数据类型,类似于java.lang.Object
  • @SrinathGanesh:object 是 Python 中一切的终极基类。对任何 x 尝试 isinstance(x, object)
  • 不,符号类 type(object) 并不意味着它返回一个类,而是该类型一个类。
  • type是一个类,是所有类的根类; type 也是一个对象。 type(x) always 返回一个类型(AKA 类),返回的类型/类也是一个对象。您可以使用isinstance(type, object)isinstance(type(x), object) 验证这一点。
猜你喜欢
  • 2017-09-12
  • 1970-01-01
  • 1970-01-01
  • 2013-12-24
  • 2011-01-08
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多