python基础原理
来源:互联网 发布:按键精灵文字输出源码 编辑:程序博客网 时间:2024/06/11 02:50
1、python是按照模块来组织的。
一个py文件,就是一个模块。
一个模块要调用另外一个模块的函数或类,需要先import这个模块。
import的本质,就是解释执行每一行代码。类和函数就是此时在定义的。
import一个模块时,python在sys.path目录下搜索这些模块。
2、内建函数和内建模块
>>> dir
<built-in function dir>
>>> import sys
>>> sys
<module 'sys' (built-in)>
>>> import os
>>> os
<module 'os' from 'D:\Python27\lib\os.pyc'>
>>> dir()
['__builtins__', '__doc__', '__name__', '__package__', 'sys', 'os']
--列出当前scope的信息。可以看到变量和模块名。
>>> dir(__builtins__)
[ '__doc__', '__import__', '__name__', '__package__', 'abs', 'len', 'dir',...
--列出这个模块的信息。可以看到变量和函数名。
>>> dir(len) --打出很多内部变量,感觉对日常开发没有什么用。
3、命名空间
相当于作用域的概念
一个py文件,就是一个模块。
一个模块要调用另外一个模块的函数或类,需要先import这个模块。
import的本质,就是解释执行每一行代码。类和函数就是此时在定义的。
import一个模块时,python在sys.path目录下搜索这些模块。
2、内建函数和内建模块
>>> dir
<built-in function dir>
>>> import sys
>>> sys
<module 'sys' (built-in)>
>>> import os
>>> os
<module 'os' from 'D:\Python27\lib\os.pyc'>
>>> dir()
['__builtins__', '__doc__', '__name__', '__package__', 'sys', 'os']
--列出当前scope的信息。可以看到变量和模块名。
>>> dir(__builtins__)
[ '__doc__', '__import__', '__name__', '__package__', 'abs', 'len', 'dir',...
--列出这个模块的信息。可以看到变量和函数名。
>>> dir(len) --打出很多内部变量,感觉对日常开发没有什么用。
3、命名空间
相当于作用域的概念
可以用locals()和globals()来查看
4、有package的情况下,模块之间如何调用,python如何启动?
F:\gaofeng\python>type p2\py2.py
import sys
import p1.py1
print(sys.path)
print(p1.py1.__name__)
F:\gaofeng\python>python p2\py2.py
Traceback (most recent call last):
File "p2\py2.py", line 2, in <module>
import p1.py1
ImportError: No module named p1.py1
F:\gaofeng\python>python -m p2.py2
['', 'D:\\Python27\\lib\\site-packages\\pip-9.0.1-py2
on27\\DLLs', 'D:\\Python27\\lib', 'D:\\Python27\\lib\
'D:\\Python27\\lib\\site-packages']
['', 'D:\\Python27\\lib\\site-packages\\pip-9.0.1-py2
on27\\DLLs', 'D:\\Python27\\lib', 'D:\\Python27\\lib\
'D:\\Python27\\lib\\site-packages']
p1.py1
注意,加了-m参数后,sys.path中会把当前路径(用空字符表示当前路径)增加进去。
0 0
- python基础原理
- Python基础原理:FP-growth算法的构建
- 基础原理
- Python基础
- Python基础
- Python基础
- Python基础
- python基础
- Python基础
- python基础
- Python基础
- python 基础
- Python 基础
- python基础
- Python基础
- Python基础
- python基础
- Python基础
- ubuntu16.04上搭建git服务器
- C代码规范
- 【Bzoj3531】旅行
- Android面试题笔记(二)
- TensorFlow 学习(九)—— 初始化函数(概率分布函数 api、常数生成函数)
- python基础原理
- C++游戏服务器的性能优化
- 题目1029:魔咒词典
- RequestMapping注解
- MySql_添加索引
- Android 常用的设计模式
- 机器学习算法 原理、实现与实践 —— 感知机与梯度下降
- g++版本太低了,连iostream都不支持
- Ubuntu16.04安装有道词典(包含第三方软件问题解决方法)