把老师的资料放在最上面:

参考: http://www.cnblogs.com/yuanchenqi/articles/5732581.html

导入模块的方法:

#!/usr/bin/env python
# coding:utf-8 # import cal,time # 可以使用,隔开,导入多个。
## import 做了两件事:
# 1. 执行对应文件
# 2. 引入变量名 # print(cal.add(3,5))
# print(cal.sub(3,5)) ## from cal import * #不建议这么使用。 并不知道里面有哪些函数 #
# from cal import add # 这种导入方法,可以直接使用函数
# from cal import sub
#
#
# print(add(5,8))
# print(sub(6,5))
#!/usr/bin/env python
# coding:utf-8 ## 模块的种类 :
# 1. 内置模块
# 2. 第三方模块
# 3. 自定义模块 # time 和 sys 模块是内置在python解释器内的,找不到相应的文件; 而os re 等模块,则在python36/Lib目录下,以文件形式存在。 ### 包 和 文件夹 的区别: 是否有 __init__.py 文件 # from web.web2.web3 import p2w
#
# print(p2w.p2w(3,3))
import sys
sys.path.append("D:/python3") # 临时将某个路径加入 如果需要永久加入,则需要修改环境变量 print(sys.path)
# 导入多级包下的模块 from web.web2.web3.p2w import p2w print(p2w(4,4)) # from web.web2 import web3 # 不支持的调用方式。仅执行 web3 __init__ 文件。 # print(web3.p2w.p2w(3,2))

注意 __name__ 的用法:仅在本文件中执行时,值为"__main__"  被调用时,则值为模块名(文件名)

#!/usr/bin/env python
# coding:utf-8 from my_mod import ma # ma.run() ## 模块的种类 :
# 1. 内置模块
# 2. 第三方模块
# 3. 自定义模块 ### 包 和 文件夹 的区别: 是否有 __init__.py 文件 if __name__ =="__main__": # 假设将当前脚本作为主函数,仅可执行,不允许被调用。 可以避免反复调用带来的坑
ma.run()

导入子文件夹中的模块,注意路径问题:

my_mod下的 ma.py文件:

#!/usr/bin/env python
# coding:utf-8 # import cal # 直接执行本文件时,用此方式导入 # from my_mod import cal # 被上一级调用时,用此方式导入。 import sys,os BASE_DIR=os.path.dirname(os.path.dirname(os.path.abspath(__file__))) print(BASE_DIR)
print(os.path.abspath(__file__)) # 本文件的绝对路径 # 加入项目所在路径, 同时解决本身的运行和被调用时的路径问题。
sys.path.append(BASE_DIR) from my_mod import cal def run():
print(cal.add(7,5)) run()

my_mod文件夹下的cal.py文件:

#!/usr/bin/env python
# coding:utf-8 # print('before...') def add(x,y):
return x+y def sub(x,y):
return x-y # print('end....')
if __name__ == "__main__": # 用于本文件的调试
print('testing....')

random 随机模块:

#!/usr/bin/env python
# coding:utf-8 import random print(random.random()) # (0,1)----float 大于0且小于1之间的小数 print(random.randint(1, 5)) # 大于等于1且小于等于5之间的整数 print(random.randrange(1, 5)) # 大于等于1且小于5之间的整数 print(random.choice([1, '', [4, 5]])) # 随机选一个 print(random.sample([11,22,33,44,55], 2)) # 列表元素任意2个组合
print(random.sample([1, '', [4, 5]], 2)) # 列表元素任意2个组合 print(random.uniform(1, 3)) # 大于1小于3的小数,如1.927109612082716 item = [1, 3, 5, 7, 9,11]
random.shuffle(item) # 打乱item的顺序,相当于"洗牌"
print(item) def v_code(): ## 实现验证码函数
ret = ""
for i in range(6): # 长度6位
num = random.randint(2,9) # 舍掉易混淆的01
alp = chr(random.randint(65,90)) # 只取了大写字母
s = str(random.choice([num,alp]))
# s = str(random.choice([2,3,4,5,6,7,8,9,'A','B','C','D','E','F','G','H','J','K','L','M','N','P','Q','R','S','T','U','V','W','X','Y','Z']))
ret += s
return ret print(v_code())

时间模块 time

#!/usr/bin/env python
# coding:utf-8 ### 参考: http://www.cnblogs.com/yuanchenqi/articles/5732581.html import time
import datetime print(time.time()) print(time.localtime()) # 结构化时间, 当地时间
print(time.localtime(1515123456)) # 传入时间戳参数
tm = time.localtime()
print("%s-%s-%s" % (tm.tm_year,tm.tm_mon,tm.tm_mday)) print(time.gmtime()) print(time.mktime(time.localtime())) # 将结构化时间转成时间戳 print(time.strftime("%Y-%m-%d %X",time.localtime())) # 将结构化时间转成字符串时间 print(time.strptime('2018-05-23 07:35:34',"%Y-%m-%d %X")) # 将字符串时间转为结构化时间 print(time.asctime()) # 输出固定格式时间
print(time.ctime()) print(datetime.datetime.now())

python模块之time_random的更多相关文章

  1. 使用C/C++写Python模块

    最近看开源项目时学习了一下用C/C++写python模块,顺便把学习进行一下总结,废话少说直接开始: 环境:windows.python2.78.VS2010或MingW 1 创建VC工程 (1) 打 ...

  2. Python模块之configpraser

    Python模块之configpraser   一. configpraser简介 用于处理特定格式的文件,其本质还是利用open来操作文件. 配置文件的格式: 使用"[]"内包含 ...

  3. Python模块之"prettytable"

    Python模块之"prettytable" 摘要: Python通过prettytable模块可以将输出内容如表格方式整齐的输出.(对于用Python操作数据库会经常用到) 1. ...

  4. python 学习第五天,python模块

    一,Python的模块导入 1,在写python的模块导入之前,先来讲一些Python中的概念性的问题 (1)模块:用来从逻辑上组织Python代码(变量,函数,类,逻辑:实现一个功能),本质是.py ...

  5. windows下安装python模块

    如何在windows下安装python模块 1. 官网下载安装包,比如(pip : https://pypi.python.org/pypi/pip#downloads) pip-9.0.1.tar. ...

  6. 安装第三方Python模块,增加InfoPi的健壮性

    这3个第三方Python模块是可选的,不安装的话InfoPi也可以运行. 但是如果安装了,会增加InfoPi的健壮性. 目录 1.cchardet    自动检测文本编码 2.lxml    用于解析 ...

  7. Python基础篇【第5篇】: Python模块基础(一)

    模块 简介 在计算机程序的开发过程中,随着程序代码越写越多,在一个文件里代码就会越来越长,越来越不容易维护. 为了编写可维护的代码,我们把很多函数分组,分别放到不同的文件里,这样,每个文件包含的代码就 ...

  8. python 模块加载

    python 模块加载 本文主要介绍python模块加载的过程. module的组成 所有的module都是由对象和对象之间的关系组成. type和object python中所有的东西都是对象,分为 ...

  9. pycharm安装python模块

    这个工具真的好好,真的很喜欢,它很方便,很漂亮,各种好 pycharm安装python模块:file-setting-搜索project inte OK

随机推荐

  1. cowboy源码分析(三)

    上接 cowboy源码分析(二) 我们接着分析cowboy_protocol.erl的request/7模块 -module(cowboy_protocol). %% API.-export([sta ...

  2. libcrypto.so.1.0.0: no version information available

    openssl-1.0.1p源码安装后,依赖于openssl.so库的应用报错libcrypto.so.1.0.0: no version information available 解法:1. 创建 ...

  3. 保存标注对象到txt 制作xml

    1.算法将检测的目标名称和目标位置保存到txt文本 图片名  xmin ymin xmax ymax (4).avi237face.jpg4smoke 83 234 142 251hand 119 2 ...

  4. Git基本命令整理

    git help <command> # 显示command的help git show # 显示某次提交的内容 git show $id git co -- <file> # ...

  5. PAT 1124 Raffle for Weibo Followers

    1124 Raffle for Weibo Followers (20 分)   John got a full mark on PAT. He was so happy that he decide ...

  6. 论文选读二:Multi-Passage Machine Reading Comprehension with Cross-Passage Answer Verification

    论文选读二:Multi-Passage Machine Reading Comprehension with Cross-Passage Answer Verification 目前,阅读理解通常会给出 ...

  7. 笔记《JavaScript 权威指南》(第6版) 系统理论知识概要

    主要内容概要 [JavaScript语言核心]词法结构,类型.值和变量,表达式和运算符,语句,对象,数组,函数,类和模块,正则表达式的模式匹配,JavaScript的子集和扩展,服务器端JavaScr ...

  8. EF Core 生成数据库

       1.运行cmd,切换到打开项目所在文件夹,输入下面的命令 dotnet ef migrations add Initial 建立并初始化数据库 dotnet ef database update ...

  9. 在CentOS 7 上设置返回上一级目录的快捷键为 Backspace

    参考这里. 编辑文件: $ vi ~/.config/nautilus/accels 找到这一行:  ; (gtk_accel_path "<Actions>/ShellActi ...

  10. shell脚本实现git和svn统计log代码行

    实现的功能 git 根据传入的三个参数:起始统计日期.结束统计日期.git仓库地址. 脚本统计的是git仓库内的所有分支的log信息. 脚本统计的是指定时间段内.每一个提交人指定的git地址的所有分支 ...