2014-04-22 105 views
1

我是一名Python程序員。最近我開始學習Java。我發現Python和Java都使用import來從其他文件獲取代碼。這兩種語言導入的確切含義有什麼區別?Python和Java中import語句的含義有什麼區別?

+0

只是爲了澄清......您使用的標籤是否正在嘗試其他... – apomene

+0

在Java中,您可以執行'import package。*'或'import package.MyClass' while python you do'from包導入*'或'從包導入MyClass' – sfat

回答

0

兩者都是相同的。

導入關鍵字用於將內置和用戶定義的包導入到源文件中。這樣你的類可以通過直接使用它的名字來引用另一個包中的類。

4

Java導入允許對類進行簡寫。這與其他一些語言不同。例如在Python中,import關鍵字將對象導入到腳本的名稱空間中。在Java中,import關鍵字只能通過允許引用類型而不指定全名來保存輸入。

在蟒蛇

In [1]: import os.path 

In [2]: path 
--------------------------------------------------------------------------- 
NameError         Traceback (most recent call last) 
<ipython-input-2-e7fa32cb05ba> in <module>() 
----> 1 path 

NameError: name 'path' is not defined 

In [3]: os.path 
Out[3]: <module 'posixpath' from '/usr/lib/python2.7/posixpath.pyc'> 

使用「路徑」你不能只指條路,就得用「os.path中」

0

這是您導入模塊Python中..

from os import * 
path 
2

存在細微的差異。

在Java中,您可以引用包或類中的對象,而不需要任何import

您可以通過new java.util.ArrayList()這樣做。

OTOH,在Python中,您總是需要以某種方式導入想要的模塊:在使用sys.argv之前,您必須使用import sys

既可以簡寫:在Java中,你做

import java.util.ArrayList; 

... 

... = new ArrayList(); 
在Python

,你可以做

from sys import argv 

,然後使用它。

兩個以及具有「包羅萬象」的語法:

  • 在Java中import java.util.*;允許您使用同一個包的幾個部分,並
  • from sys import *是(皺眉)Python的當量它。
相關問題