包和模块
包:本质就是一个目录(必须带有一个__init__.py文件),从逻辑上组织模块。
模块的导入
导入飘红问题
导入飘红:多层文件夹容易导致飘红,解决方法:在pycharm根目录下创建工程,不要多层嵌套文件夹。因为pycharm自动会把根目录加入环境变量。
import model_name #导入这个模块,使用: model_name.m1()
from model_name import * #相当于把模块中的所有内容在当前文件重新写一遍,使用: func(),不建议使用,因为当前可能也定义了一个func方法,python从上到下解释,这样就不知道调用了哪个func
from model_name import m1,m2,m3 #导入模块中的3个功能
from model_name import m1 as new_name #给功能起个新名字,使用:new_name()
import的本质:把python文件解释一遍
导入包的本质:执行包下的__init__.py文件
import model_name # model_name = all code 就是把model_name中的所有code解释一遍,赋给一个变量model_name,调用时需要model_name.m1()
from model_name import m1 # 只把m1中的所有code解释一遍,赋给一个变量m1,调用时就是m1()
关于__init__.py文件,py2中必须再包中包含它,否则报错,py3则可以有可以无。
time模块:
a=time.strftime('%Y-%m-%d %H:%M:%S',time.localtime()) ----->>> 2018-04-27 15:28:31
b=time.strptime(a,'%Y-%m-%d %H:%M:%S') b.tm_year ---->>2018
time.sleep()
time.localtime() ----->>>本地时间
time.time() ----->>>UTC时间
datetime模块
import datetime
print(datetime.datetime.now()) ---->2018-04-27 16:20:15.224483
os和sys模块
import os,sys
print(__file__)#当前文件相对路径
print(os.path.abspath(__file__))#当前文件绝对路径
print(os.path.dirname(os.path.abspath(__file__)))#当前文件绝对路径所在的文件夹(也是绝对)
sys.path.insert(0,os.path.dirname(os.path.abspath(__file__)))#降上面的文件夹路径加到系统环境变量中
print(os.path.dirname(os.path.dirname(os.path.abspath(__file__))))#当前文件绝对路径所在的文件夹的上级文件夹(也是绝对)

浙公网安备 33010602011771号