因为自动化测试才去接触python,平常用的都是PHP,java,都非常熟悉了操作自如,心想python学起来应该不费什么力气,第一块避免不了的就是类的引入,php的是use ,java的是import。经过我的查阅好像python也有import,but好像还有个from import,what?fuck!这东西还不是一个import能完全解决的吗?于是我进行了例子测试,发现了区别。
首先准备三个文件,我把代码贴出来:
Util.py
def lookNum():
print("我是数字方法")
def lookStr():
print("我是字符串方法")
Teacher.py
class Teacher:
def check(self):
return '我是老师';
class Order:
def checkOrder(self):
return '我是订单';
Student.py
from Teacher import *
import Util
class Student:
def login(self):
str = Teacher.check(self)
order = Order.checkOrder(self)
Util.lookNum()
Util.lookStr()
print(str+'登录成功'+order)
s = Student()
s.login()
# 当我们引入一个class的时候必须使用from import
# 如果你的一个文件里面写了多个class,可以直接使用from Teacher import * 全部引入,
# 比如我的Teacher里面有2个class,
# 我就用了from Teacher import *,单独引入一个 from Teacher import Order,后面跟上类名就行了。
# 当你的文件只是一个简单的py文件不是一个类文件,里面有一些方法的时候,可以直接import Util,
# 这表示引入的这个Util里面的所有方法,使用的时候Util.lookNum()
# 如果你只是想单独引入一个方法from Util import lookNum
# 可以这样使用的时候也比较简单直接lookNum()
引入单个方法的例子
Student.py
from Teacher import *
from Util import lookNum
class Student:
def login(self):
str = Teacher.check(self)
order = Order.checkOrder(self)
lookNum()
print(str+'登录成功'+order)
s = Student()
s.login()