python--之模块,数据存储json

使用模块
Python本身就内置了很多非常有用的模块,只要安装完毕,这些模块就可以立刻使用

编写一个模块1,文件为test01.py
title = '模块1'
#函数
def say_hello():
    print '我是 %s' %title
#类
class Cat(object):
    pass
编写一个模块2,文件为test02.py
title = '模块2'
#函数
def say_hello():
    print '我是 %s' %title
#类
class Dog(object):
    pass

导入模块import

导入模块后,我们就有了变量 指向该模块,利用这个变量,就可
以访问模块的所有功能

import test01
import test02
test01.say_hello()
test02.say_hello()
cat = test01.Cat()
print cat
dog = test02.Dog()
print dog

这里写图片描述

别名

导入模块时,还可以使用别名,这样,可以在运行时根据当前环境选择最合适的模块
和上面代码功能一致,只是名字更改了,方便操作

import test01 as CatModule
import test02 as DogModule
CatModule.say_hello()
DogModule.say_hello()
cat = CatModule.Cat()
print cat
dog = DogModule.Dog()
print dog

取出包中想要的功能

from py文件名 import 类/函数
表示从包中取出想要的功能

#可以只导入类或函数
#如果导入的两个函数名一致会执行后导入的函数
from test01 import Cat
from test02 import say_hello
from test01 import say_hello as test01_say_hello
say_hello()
test01_say_hello()
miaomiao = Cat()

这里写图片描述

python的解释器在导入模块的时候,会:

1.搜索当前目录指定的模块文件,如果有就直接导入
2.如果没有,再搜索系统目录
注意:在开发时,给文件起名,不要和系统模块文件重名

例如导入random这个系统模块文件:
import random
rand = random.randint(0,10)
print rand
在很多python文件中会看到以下格式的代码
    #导入模块
    #定义全部变量
    #定义类
    #定义函数

    #在代码的下方
    def main():
        pass
    if __name__ == '__main__'
       main()
__name__属性
__name__属性可以做到,测试模块的代码只在测试情况下被运行,而在被导入时不会执行
  __name__是python的一个内置属性,记录着一个字符串
  如果是被其他文件导入时,__name__就是模块名
  如果是当前执行的程序,__name__就是__main__
此文件名为test.py
#全局变量,函数,类 直接执行的代码不是向外界提供的工具
def say_hello():
    print 'hello hello'
#print 'have a nice day!'
#如果直接在模块中输出,得到的是__main__
if __name__ == '__main__':
    print __name__
#文件被导入的时候,能够直接被执行的代码不需要执行
    print 'robort开发的程序'
    say_hello()

这里写图片描述

导入文件:
#在导入的.py文件中,输出是 文件名
import test
#结果会显示为空,正好验证了上面,那些导入包的时侯,能够直接被执行的代码不需要执行

这里写图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值