首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >Python变量声明

Python变量声明
EN

Stack Overflow用户
提问于 2012-06-13 10:54:08
回答 4查看 317.3K关注 0票数 101

学习Python,并有一些基本的疑问。

1.我将variable declaration (此处的路径)视为

class writer:
    path = ""

有时,没有显式声明,但通过__init__进行初始化。

def __init__(self, name):
    self.name = name

我理解__init__的用途,但在任何其他函数中声明变量是明智的吗?

2.如何创建变量来保存自定义类型?

class writer:
    path = "" # string value
    customObj = ??
EN

回答 4

Stack Overflow用户

发布于 2018-07-04 22:35:19

这可能晚了6年,但在Python 3.5及更高版本中,您可以像这样声明变量类型:

variable_name: type_name

或者这样:

variable_name # type: shinyType

因此,在您的示例中(如果您定义了一个CustomObject类),您可以这样做:

customObj: CustomObject

有关详细信息,请参阅thisthat

票数 27
EN

Stack Overflow用户

发布于 2017-06-22 23:29:48

出于作用域的目的,我使用:

custom_object = None
票数 17
EN

Stack Overflow用户

发布于 2012-06-13 11:12:17

变量是有作用域的,所以有特定于你的函数的变量是合适的。您不必总是明确地说明它们的定义;通常您可以直接使用它们。只有当你想做一些特定于变量类型的事情时,比如追加一个列表,你才需要在开始使用它们之前定义它们。这是一个典型的例子。

list = []
for i in stuff:
  list.append(i)

顺便说一句,这并不是设置列表的好方法。最好是这样说:

list = [i for i in stuff] # list comprehension

...but I跑题了。

你的另一个问题。自定义对象本身应该是一个类。

class CustomObject(): # always capitalize the class name...this is not syntax, just style.
  pass
customObj = CustomObject()
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/11007627

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档