一个.py文件就是一个模块,而模块名就是文件名,如module.py的模块名就是module。如果module.py文件里定义了一些函数和变量,而外部文件如test_module.py想使用这些函数或变量,那么test_module.py里可以使用import语句来引入该模块。
使用方法是在文件的第一行 import 模块名,如import module,若要使用module模块内的某个函数或变量,如func_test函数,则可以这样使用模块名.函数名(变量名),即module.func_test().
当运行test_module.py模块时,会自动产生一个名为module.pyc文件,该文件是module.py经过编译后的产物(类似于java的.class字节码文件),以后只要.pyc文件存在,即使删除.py源文件,依然可以引入并使用该模块。因为test_module.py模块引用了module.py模块,import module语句的效果等价于把module.py的文件内容直接拼接到test_module.py文件头部。
 
具体来说,
若module.py文件内容是:
 def func_return():
x=3
return x print 'x=',func_return()

test_module.py文件内容是:

 import module

 print 'y=',module.func_return()

那么运行test_module.py时就会输出

x=3 y=3

(x=3是module.py的输出)
注意:还可以通过使用多个import语句,同时引入多个模块。

.pyc文件是什么?的更多相关文章

  1. pyc 文件反编译 py uncompyle2

    一.工具 https://github.com/Mysterie/uncompyle2 -----------------------2016-6-3 11:24:19-- source:[1]用un ...

  2. python py生成为pyc文件

    生成单个pyc文件 python就是个好东西,它提供了内置的类库来实现把py文件编译为pyc文件,这个模块就是 py_compile 模块. 使用方法非常简单,如下所示,直接在idle中,就可以把一个 ...

  3. 模块之字节编译的.pyc文件---from.import语句

    字节编译的.pyc文件输入一个模块相对来说是一个比较费时的事情,所以Python做了一些技巧,以便使输入模块更加快一些.一种方法是创建 字节编译的文件 ,这些文件以.pyc作为扩展名.字节编译的文件与 ...

  4. 删除项目中的.pyc文件

    在编写python项目的时候,往往会生成很多的.pyc文件,但是在我们提交代码的时候这些.pyc文件又是不必要的,所以需要对项目里面的.pyc文件进行清理.再此,经过我的查阅资料和尝试,分享出以下方法 ...

  5. python编译、运行、反编译pyc文件

    为了加密 .py 文件,以前一般使用打包成 exe ,但是最近发现可以将其编译成二进制文件 pyc ,虽然反编译难度不大,但是也需要一些水平 编译生成 pyc: 单个文件 代码: import py_ ...

  6. 什么是pyc文件,Python

    pyc文件就是 Python 程序编译后得到的字节码文件 (py->pyc).pyc文件一般由3个部分组成:最开始4个字节是一个Maigc int, 标识此pyc的版本信息, 不同的版本的 Ma ...

  7. pyc文件

    1.pyc文件 是python预编译后的字节码文件,并不是机器码.2.PyCodeObject 是Python编译器真正编译成的结果: 当python程序运行时,编译的结果是保存在PyCodeObje ...

  8. day2 --> pyc 文件

    执行python 代码时,如果导入了其他的.py文件,那么,执行过程中会自动生成一个与其同名的.pyc文件,该文件就是python解释器便宜之后产生的字节码. PS:代码经过便宜可以产生字节码;字节码 ...

  9. pyc文件是什么【转载】

    转自:https://blog.51cto.com/bella41981/2045108 1.概念 pyc文件是py文件编译后生成的字节码文件(byte code).pyc文件经过python解释器最 ...

随机推荐

  1. OpenGL Pixel Linked-List

    Keywords: opengl linked list http://on-demand.gputechconf.com/gtc/2014/presentations/S4385-order-ind ...

  2. Create new tool for CSV

    CsvFileStream.cs public class CsvFileStream { TextReader stream; bool EOS = false; bool EOL = false; ...

  3. application

    改变全局application到页面的参数 添加参数:HttpServletRequest req 使用req.getSession().getServletContext().setAttribut ...

  4. 后缀.jar的是什么文件?

    解压kafka 打开后是一堆.jar结尾的文件,那么后缀.jar的是什么文件? JAR 文件就是 Java Archive File,顾名思意,它的应用是与 Java 息息相关的,是 Java 的一种 ...

  5. Java继承和多态实例

    我们知道面向对象的三大特性是封装.继承和多态.然而我们有时候总是搞不清楚这些概念.下面对这些概念进行整理, 为以后面向抽象的编程打下坚实的基础. 封装的概念还是很容易理解的.如果你会定义类,那么相信你 ...

  6. java的集合框架最全详解

    java的集合框架最全详解(图) 前言:数据结构对程序设计有着深远的影响,在面向过程的C语言中,数据库结构用struct来描述,而在面向对象的编程中,数据结构是用类来描述的,并且包含有对该数据结构操作 ...

  7. Nosql 之 Redis(可做缓存 )

    下载 可以下载解压安装的 地址:https://github.com/dmajkic/redis/downloads 修改 redis.conf 取消注释 requirepass foobared运行 ...

  8. C语言动态内存分配

    考虑下面三段代码: 片段1 void GetMemory(char *p) { p = (); } void Test(void) { char *str = NULL; GetMemory(str) ...

  9. Roslyn词法分析器初使用

    需:install-package:Microsoft.CodeAnalysis ];         NamespaceDeclarationSyntax NameSpaceDeclaration  ...

  10. 推荐系统(协同过滤,slope one)

    1.推荐系统中的算法: 协同过滤: 基于用户 user-cf 基于内容 item –cf slop one 关联规则 (Apriori 算法,啤酒与尿布) 2.slope one 算法 slope o ...