首页 > 代码库 > 007 Python 模块及函数

007 Python 模块及函数

# Python
  ● 别人写好的东西(库)
    A:*foo1 foo2 foo3 foo4
    B:*foo2 foo1 foo3 foo4
    from XX import XX
    from XX 就是 包的东西
  ● __XX__.py 不对外公开的

 

1 #fileDemo.py
2 # -*- coding: UTF-8 -*-
3 
4 def FooDemo():
5     print("FillDemo.FileDemo.FfooDemo()")
6     
1 #Demo.py
2 # -*- coding: UTF-8 -*-
3 from fileDemo import FooDemo
4     
5 FooDemo()

 

 

  ● 作业讲解
    新建 Shop.py
    新建 Login.py

    ○ with open("userinfo.txt") as file:
      相当于同时做了下面的两句代码
      就不用担心文件没有关闭了
    file = open("userinfo.txt") #r 读方式打开文件
    file.close()

 1 #login.py
 2 # -*- coding: UTF-8 -*-
 3 userinfos = [] 
 4 with open("userinfo.txt") as file:    #确保数据的及时性
 5     for item in file.readlines():
 6         userinfos.addend(item)
 7 def login(name,psw):
 8         for userinfo in userinfos:
 9             temp = userinfo.split()
10             if name == temp[0] and psw == temp[1]:
11                 return True        #登陆成功
12         else:
13             return False        #登陆失败    
 1 #Shop.py
 2 # -*- coding: UTF-8 -*-
 3 from Login import login
 4 #登陆
 5 name = input("Logo ID:")
 6 psw = input ("\r\nLogo Psw:")
 7 
 8 if(login(name,psw)):
 9     print("\r\nOK")
10 else:
11     print("\r\nNO")
12     

 

  ● 两个文件哪个先运行的
    ○ 导入的文件,会先执行一次代码。
    ○ 由于Python 是一个解释语言,Main函数不存在 .py内
    ○ __name__ 每个程序都有一个默认的变量
      如果是执行代码的文件会是 一个 __main__

 1 #logo.py
 2 # -*- coding: UTF-8 -*-
 3 print(__name__)
 4 userinfos = [] 
 5 with open("userinfo.txt") as file:    #确保数据的及时性
 6     for item in file.readlines():
 7         userinfos.append(item)
 8 def login(name,psw):
 9         for userinfo in userinfos:
10             temp = userinfo.split()
11             if name == temp[0] and psw == temp[1]:
12                 return True        #登陆成功
13         else:
14             return False        #登陆失败
15     
16     
17 if __name__ == __main__:
18     if login(input("Name:"),input("\r\nPassWord")):
19             print("\r\nOK")
20     else:
21         print("\r\nNo")
 1 #Shop.py
 2 # -*- coding: UTF-8 -*-
 3 from Login import login
 4 #登陆
 5 
 6 if __name__ == __main__:
 7     name = input("Logo ID:")
 8     psw = input ("\r\nLogo Psw:")
 9 
10     if(login(name,psw)):
11         print("\r\nOK")
12     else:
13         print("\r\nNO")
 1 #User.py
 2 # -*- coding: UTF-8 -*-
 3  form Login import login
 4  def UserPay(name,psw,money):
 5      if login(name,psw):
 6          print("授权成功开始扣费”)
 7          with open(file) as data:
 8             for item in data.readlines():
 9                 userinfo = item.split()
10                 if name == userinfo[0]:
11                     userinfo[3] -= money
12      else
13           print("授权失败")

 

 

  ● 函数的方式

    def foo(*arg):  

      一个星号是列表传输的

    def foo(**arg):

      两个星号是字典进行传输的  

007 Python 模块及函数