python入门与进阶篇(四)之包、模块、函数与变量作用域
python项目的组织结构
包(文件夹)-->模块(文件)-->类-->函数和变量
seven.c4、six.c4:(seven)包名.模块名(c4) 构成命名空间
seven包的结构:
seven
--t(子包)
-- __init__.py (成为一个包必需的文件)
--c5.py
-- __init__.py (成为一个包必需的文件)
--c1.py
--c2.py
--c3.py
--c4.py
--c6.py
import 导入模块
c5: a=1
c2: import t.c5 as m
print(m.a) # 1
[code]# c3: __all__=['a','b'] a,b,c=1,2,3 # import 导入模块名 as 改变模块名 # import t.c3 as m # print(m.a) # from t.c3 import a 从c3模块下导入a变量 # * 代表所有c3中 __all__=['a','b'] 导出的变量 默认是所有变量 from t.c3 import * print(a) print(b) print(c) ''' 结果: 1 2 Traceback (most recent call last): File "D:\前端\python视频\python\one\c2.py", line 11, in <module> print(c) NameError: name 'c' is not defined '''
t子包 __init__.py: 包管理
import sys
import io
import datetime
c6中导入
import t
print(t.sys.path)
包和模块是不会重复导入的,避免循环导入模块
函数
内置函数:
round() 四舍五入保留几位小数
[code]a=1.12386 result=round(a,2) print(result) # 1.12
查看python内置函数 python-->回车-->help(print)-->more-->回车
自定义函数
def fun(parame_list):
pass
1.def关键字定义一个函数 js 直接function fun(){} 或者var fun=function(){}
2.parame_list参数列表可以没有
3.没有return 默认返回None js 返回null
4.python函数的定义需放在调用之前 js 有函数声明提升
5.使用函数名调用 fun()
6.函数可以返回多个值 构成一个元组 js只能有一个返回值
7.必需参数 skill1和skill2 js参数可以不是必需参数
8.关键字参数 调用时不需要记住参数的顺序 如damage(skill2=6,skill1=1) js没有关键字参数这个说话
9.可以设置默认参数 定义和调用时默认参数都放在后面
[code]def damage(skill1,skill2): damage1=skill1*3 damage2=skill2*3+2 return damage1,damage2 # <class 'tuple'> print( type(damage(3,6)) ) # 序列解包 skill1_damage,skill2_damage=damage(3,6) print(skill1_damage) #9 print(skill2_damage) #20
序列解包
[code]a,b,c=1,2,3 d='345' # ['3','4','5'] '3','4','5' e,f,g=d print(a) #1 print(b) #2 print(c) #3 print(e) #3 print(f) #4 print(g) #5
变量的作用域
[code] a=1 # 全局变量 def add(): a=3 # 局部变量 函数内部无法更改全局变量 但是在函数内可以访问全局变量 print(a) add() # 3 print(a) # 1
阅读更多
- Python模块中的变量和函数的作用域
- python 中模块(model)概念的引入 以及 函数变量的作用域
- Python(五) 包、模块、函数与变量作用域
- python 函数进阶:参数传递,高阶函数,lambda 匿名函数,global 变量,递归
- Python:函数2——变量的作用域 、 返回值
- 【Python入门】3、模块与变量名
- python函数学习与变量作用域
- python[变量作用域-函数-闭包-装饰器-生成器]
- [Python入门及进阶笔记]Python-基础-函数小结
- python入门基础教程06 python变量与函数
- python入门基础教程06 python变量与函数
- 一个月能入门Python吗?月薪25K的大佬给我整理了函数和模块资料
- python 函数、函数式编程、变量作用域、函数__doc__属性
- Python入门--12--函数与变量
- Python入门与进阶的学习笔记之变量
- python学习笔记11(函数二): 参数的传递、变量的作用域
- javascript和python函数中变量作用域的区别
- python基础----函数的定义和调用、return语句、变量作用域、传参、函数嵌套、函数对象、闭包、递归函数
- Python学习04-函数模块作用域等
- python函数-变量作用域