c/c++ 可以通过多页的头文件来组织一个较大的工程,并且容易维护,阅读和修改。那么python中是怎么实现的呢?
与c中“include”关键字功能相似的是“import”。让我们来对比一下用两种不同语言实现相同功能的两段代码:
================C言语版==============================
//--------------------Welcome.h-----------------------------------------------
#ifndef WELCOME_H
#def WELCOME_H
void hello(void);
void bye(void);
#endif
//--------------------Welcome.c------------------------------------------------
include Welcome.h
void hello(void){
printf("Hello!");
}
void bye(void){
printf('Goodbye!');
}
//-------------------test.c------------------------------------------------------
include Welcome.h
int main(void){
hello();
bye();
}
===============python 版本=============================
--------------------------Welcome.py-----------------------------------------------
def hello():
print "Hello!"
def bye():
print "Goodbye!"
------------------------test.py------------------------------------------------------
import Welcome
Welcome.hello()
Welcome.bye()
本没打算作个对比的,只是想类比一下。仔细一看,是不是觉得python言语更加简练,容易阅读呢。
如果定义了类,该怎么引用呢?用C++重写以上两段代码如下:
================C++言语版==============================
//--------------------Welcome.h-----------------------------------------------
#ifndef WELCOME_H
#def WELCOME_H
class Greeting{
public:
Greeting();
void hello(void);
void bye(void);
}
#endif WELCOME_H
//--------------------Welcome.cpp------------------------------------------------
include Welcome.h
void Greeting:hello(void){
printf("Hello!");
}
void Greeting:bye(void){
printf('Goodbye!');
}
//-------------------test.c------------------------------------------------------
include Welcome.h
int main(void){
attendant.Greeting();
attendant.hello();
attendant.bye();
}
===============python 版本=============================
--------------------------Welcome.py-----------------------------------------------
class Greeting:
def hello(self):
print "Hello!"
def bye(self):
print "Goodbye!"
------------------------test.py------------------------------------------------------
import Welcome
attendant.Welcome.Greeting()
attendant.hello()
attendant.bye()
参考: