例如,在Java中,当我们导入一些类时,我们可以访问类的内容而无需编写文件名。像这样:
import structures.Node;
public class JavaExample {
//then I can call Node directly
Node node = new Node();
}
但在Python中,当我想做同样的事情时,我必须这样做:
import node
class PythonExample:
# have to write node. first
my_node = node.Node()
有没有办法在没有'node'的情况下调用Node类,就像在Java中一样?
答案 0 :(得分:3)
如果您经常使用该模块中的某些内容,那么您可以从模块中专门导入它,然后在没有名称的情况下引用它:
from random import randint
randint(1,10)
或者,为方便起见,您可以缩短模块名称:
import random as r
r.randint(1,10)
答案 1 :(得分:1)
在Python中,您通常会使用'节点。'但它经常缩短以节省击键次数。例如:
import pandas as pd
import numpy as np
答案 2 :(得分:1)
Chase G.和Jessica描述的方法通常是你想要做的。为了完整性'为了这个,你在Java中所做的直接模拟将是from node import *
。由于命名空间污染等原因,这通常被认为是不良形式(1)(2)
(1):Why is "import *" bad?
(2):What exactly does "import *" import?