美文网首页
2018-04-26-python module

2018-04-26-python module

作者: DeveloperCong | 来源:发表于2018-04-26 19:08 被阅读0次

__name __

导入模块的时候会从头到尾执行一遍,因此如果我们在我们的.py 文件中,写了 直接能执行的代码,比如print("xxx") 这样的代码,就会在导入的时候执行一遍,但是有些是我们的测试代码,需要在开发模块的时候进行测试,还比如,我们自己开发的功能调用的时候需要执行一个方法,但是呢,如果我们被别人引入的时候,不希望执行这些代码:

python有一个 变量叫 __name__ 在直接执行的时候的值为 __main__ 在作为模块导入的时候为 模块的名字;
因此:

if __name__  == " __main__ ":
      # 需要执行的代码
       main()

什么是模块?

模块就是.py文件,或者文件夹

导入模块的方法:

import moduleName
form moduleName import 功能
其中功能包括: 函数,全局变量,类

有一个属性可以控制 模块对外开放的功能

__all__ = ['test', 'test2']  
""" 
列表中添加的是需要暴露的功能,也就是 函数,全局变量,
类等,只有这个列表中有的功能外部才能导入,
如果不写,默认是可以导入全部功能。
"""

包 : 按照包来组织代码

1 需要创建一个文件夹,在这个文件夹下,创建一个__init__.py文件,这样这个文件夹就能够称之为一个包;
这个文件夹下面可以放置多个py文件
__init__.py 文件里也可以定义__all__属性,和上面类似,导入一个包的时候,就会执行__init__.py 这个文件,因此如果在__init__.py文件中写上: import xxx :就表示可以使用这个功能。

发布一个python包:

需要创建 setup.py文件

程序传参;

ping 192.158.1.13
这里面的ip地址是可以变的,因此程序肯定是可以在执行的时候接收到这些参数,然后进行处理---python是如何接收传参的呢?

python中有一个模块叫 sys

import sys
sys.argv: 这个参数就代表程序执行的时候传入的参数
argv是一个列表,列表的第一个元素 也就是argv[0]:表示的程序的名称
argv[1]....等 就表示程序运行时传入的参数

range的危害:

在python2中range会创建到内存中,一次如果创建一个数量很大的range列表,会导致内存占用过多甚至溢出。python3中只有在实际获取的时候才真正创建对象 分配内存

列表推导式:

推导一个列表:实际上是对 for xx in xxxx:循坏的一个简写

1 原始版:
a = []
for i in range(1, 10):
       a.appeng(i)

2简略版  
   []: 代表列表
   [ for i in range(1,10)] :列表中for循环
   [i for i in range(1,10)] 列表中的元素为i 因此前面再加个i
   既然可以for循环,也可以再进行扩展
   [i for i in range(1, 10) if i%2 == 0] :满足连个条件的i
   [(1,1), (1, 2),...] 列表中是元组如何构成?
   [(i, j) for i in range(1, 10) for j in range(10)] 

set集合: 自动去重的无序列表

set2 = {11, 22, 33, 44}

相关文章

  • 2018-04-26-python module

    __name __ 导入模块的时候会从头到尾执行一遍,因此如果我们在我们的.py 文件中,写了 直接能执行的代码,...

  • Android 组件化简单使用

    一 创建Module 主Module app 地图Module map 相机Module camera,基...

  • Module & Swift库 (6)

    Module & Swift库 (6) Module Module定义 Module(模块)-最小的代码单元。一个...

  • module.exports与exports的区别

    module exports = module.exports = {} 所以module.exports和exp...

  • Intellij Module 失效

    Module Project 中 module 生效的标志是module名呈现黑色加粗样式 F4 是 module...

  • ES6--module

    module 什么是module? module就是一个包含js代码的文件,module里默认使用use stri...

  • Python中import机制实用分析

    import 对于语句 import ,实际将module_...

  • aar文件找不到

    aar文件存在module:dss 主module中加入: dss的module中加入

  • python modules

    module function A module is a collection of functions and...

  • 4

    模块导入方法: import module_name import module_name, module2_na...

网友评论

      本文标题:2018-04-26-python module

      本文链接:https://www.haomeiwen.com/subject/hauplftx.html