Python学习---重点模块的学习【all】
time [时间模块]
import time
# print(help(time)) # time模块的帮助
print(time.time()) # 时间戳
print(time.clock()) # 计算CPU执行的时间
print(time.ctime()) # 默认当前时间 Sun Dec 10 22:07:16 2017
print(time.ctime(1512914742)) # 秒转换为时间 Sun Dec 10 22:05:42 2017
print(time.mktime(time.localtime())) # 当前时间转换为时间戳
print(time.strftime('%F %X')) # 2017-12-10 22:05:42
print(time.localtime()) #time.struct_time(tm_year=2017, tm_mon=12, tm_mday=10, tm_hour=22, tm_min=4, tm_sec=47, tm_wday=6, tm_yday=344, tm_isdst=0)
time.sleep():不调用CPU资源
datetime [时间模块]
import datetime
import time
print(datetime.datetime.now()) # 2017-12-10 22:10:51.364760
print(time.ctime()) # Sun Dec 10 22:12:23 2017
print(time.strftime('%F %X')) # 2017-12-10 22:05:42 超时:
import datetime
timeout = datetime.datetime.now() + datetime.timedelta(seconds=10) # 10秒
timeout2 = datetime.datetime.now() + datetime.timedelta(days=10) # 10 天·
random [随机模块]
import random
print(random.random()) # 取值范围[0-1]
print(random.random()*100) # 取值范围[0-100]
print(random.randint(1, 8)) # 取值范围[1-8]
print(random.choice('hello')) # 取值范围[hello]
print(random.choice(['hello', 'world', '2017'])) # 取值范围['hello', 'world', '2017']
print(random.sample(['1', '2', '3', '5'], 2)) # 取值范围从['1', '2', '3', '5']中取出2个值
print(random.randrange(1, 7)) # 取值范围[1, 7), 左闭右开,推荐
os [操作系统]
import os
os.getcwd() 获取当前工作目录,即当前python脚本工作的目录路径
os.chdir("dirname") 改变当前脚本工作目录;相当于shell下cd
os.curdir 返回当前目录: ('.')
os.pardir 获取当前目录的父目录字符串名:('..')
os.makedirs('dirname1/dirname2') 可生成多层递归目录
os.removedirs('dirname1') 若目录为空,则删除,并递归到上一级目录,如若也为空,则删除,依此类推
os.mkdir('dirname') 生成单级目录;相当于shell中mkdir dirname
os.rmdir('dirname') 删除单级空目录,若目录不为空则无法删除,报错;相当于shell中rmdir dirname
os.listdir('dirname') 列出指定目录下的所有文件和子目录,包括隐藏文件,并以列表方式打印
os.remove() 删除一个文件
os.rename("oldname","newname") 重命名文件/目录
os.stat('path/filename') 获取文件/目录信息
os.sep 输出操作系统特定的路径分隔符,win下为"\\",Linux下为"/"
os.linesep 输出当前平台使用的行终止符,win下为"\t\n",Linux下为"\n"
os.pathsep 输出用于分割文件路径的字符串
os.name 输出字符串指示当前使用平台。win->'nt'; Linux->'posix'
os.system("bash command") 运行shell命令,直接显示
os.environ 获取系统环境变量
os.path.abspath(path) 返回path规范化的绝对路径
os.path.split(path) 将path分割成目录和文件名二元组返回
os.path.dirname(path) 返回path的目录。其实就是os.path.split(path)的第一个元素
os.path.basename(path) 返回path最后的文件名。如何path以/或\结尾,那么就会返回空值。即os.path.split(path)的第二个元素
os.path.exists(path) 如果path存在,返回True;如果path不存在,返回False
os.path.isabs(path) 如果path是绝对路径,返回True
os.path.isfile(path) 如果path是一个存在的文件,返回True。否则返回False
os.path.isdir(path) 如果path是一个存在的目录,则返回True。否则返回False
os.path.join(path1[, path2[, ...]]) 将多个路径组合后返回,第一个绝对路径之前的参数将被忽略
os.path.getatime(path) 返回path所指向的文件或者目录的最后存取时间
os.path.getmtime(path) 返回path所指向的文件或者目录的最后修改时间print('parent process:', os.getppid())
print('process id:', os.getpid())
import os
import time os.chdir(r'c:\Users') # r代表正则,Py内置函数会自动替换此,代表输入即输出,不做特殊字符的替换
# os.removedirs('test\\tt') # 只能删除空文件夹,如果文件夹内有内容,则返回上一层查找
# os.makedirs('test\\tt') # 带一个\代表转义字符,表示在c:\User创建了test,test下创建了tt
# os.mkdir('hhh') # 创建单个文件夹
# os.rmdir('hhh') # 删除单个空文件夹
# os.rmdir('test\\tt') # 删除单个空文件夹tt,仅仅删除tt一个文件夹
# os.remove('test\hhh.txt') # 删除test下面的hhh.txt文件
# os.renames('test\\tt', 'test\\ttt') # 重命名文件/文件夹
# print(os.sep) # 文件的分隔符,Win:\, Linux: /
# print('os.linesep: ', os.linesep) # 换行分隔符, Win:\r\n Linux:\n
# print(os.pathsep) # 路径分隔符号,例如环境变量, Win:; Linux: :
# print('os.name: ', os.name) # 字符指出当前使用系统名称, Win:nt Linux:posix
# print(os.system('dir')) # 执行系统命令
# print(os.environ) # 显示系统环境变量
# print(os.stat('test\\ttt\hhh.txt')) # 获取文件的信息,包括文件的创建时间,更改等信息
# print(os.stat('test'+os.sep+'ttt'+os.sep+'hhh.txt'))
# print(os.listdir(os.getcwd()))# 获取当前路径下的内容
# print(os.path.abspath('./test')) # 显示文件的绝对路径
# print(os.path.split(r'c:\Users\test\ttt\hhh.txt')) # 将文件的路径和文件切割,返回一个元组
# print(os.path.dirname(r'c:\Users\test\ttt\hhh.txt')) # 返回文件所在的路径名称
# print(os.path.basename(r'c:\Users\test\ttt\hhh.txt')) # 返回文件所在的文件名称
# print(os.curdir) # 获取当前的路径,.代表当前路径,..代表上一级目录
# print(os.getcwd()) # 相当于Linux下的pwd
# os.mkdir('hhh') # 当前路径创建文件夹
print('parent process:', os.getppid()) # 获取父进程号
print('process id:', os.getpid()) #获取自己的进程号
sys [Py解释器]
sys.argv 命令行参数List,第一个元素是程序本身路径
sys.exit(n) 退出程序,正常退出时exit(0)
sys.version 获取Python解释程序的版本信息
sys.maxint 最大的Int值
sys.path 返回模块的搜索路径,初始化时使用PYTHONPATH环境变量的值
sys.platform 返回操作系统平台名称
sys.stdout.write('please:')
val = sys.stdin.readline()[:-1]
import sys
# print(sys.version) # 获取Python解释程序的版本信息
# print(sys.maxsize) # 最大的Int值 9223372036854775807
# print(sys.platform) # 返回操作系统平台名称 win32
# print(sys.path) # 返回模块的搜索路径,初始化时使用PYTHONPATH环境变量的值
# print(sys.path.append('绝对路径'))
# print(sys.stdout.write(sys.version)) # 标准输出
# val = sys.stdin.readline()[:-1]# 标准写入
# print(val)
hashlib [加密算法]
MD5 加密算法:单向,不可逆算法
import hashlib
m = hashlib.md5() # 创建hash对象
# Py3中默认是unicode编码,我们需要的是一个字符bytes类型[二进制],所以需要转换
m.update('hello world'.encode('utf-8'))
print(m.digest()) # 二进制显示的十六进制
print(m.hexdigest()) # 返回一个十六进制[0-9a-f]的明文 5eb63bbbe01
Sha256 加密算法:单向,不可逆算法
import hashlib
# sha256 加密算法
sha = hashlib.sha256() # sha256用到最多
sha.update('hello world'.encode('utf-8'))
print(sha.hexdigest()) # b94d27b9934d3e08a52e52d7da7dabfac484efe37a5380ee9088f7ace2efcde9
logging [日志模块]
configparse[配置模块]
re [正则模块]
subprocess [执行命令]
uuid
根据机型等特性产生一个字符串,一般来说是不重复的
import uuid print(uuid.uuid1()) # 唯一的表示
# print(uuid.uuid4()) # 会随机产生
json
pickle
shelve
xml
importlib
Python学习---重点模块的学习【all】的更多相关文章
- Python学习---重点模块之re
正则表达式是用来操作字符串,但是字符串提供的正则是完全匹配,有时候我们需要进行模糊匹配,这个时候就需要正则表达式了.通过re模块来实现,由C语言来执行底层的匹配 字符匹配(普通字符,元字符): 1 普 ...
- Python学习---重点模块之subprocess
subprocess是用来执行系统程序,查看系统的模块, 查看当前目录 第一种方法: import subprocess # subprocess会单独自己开辟一个线程,内部是多线程 # stdout ...
- Python学习---重点模块之logging
日志级别 日志级别 critical > error > warning > info > debug, 默认是从warning开始打印 import logging # 日 ...
- Python学习---重点模块之configparse
configparse模块常用于生成和修改常见的配置文档 生成配置模块:用字典写 import configparser config = configparser.ConfigParser() co ...
- Python学习---重点模块之json
注意:JSON不能转换类,不能转换函数 重点方法示例 json.dumps():实现文件写入,字符串转换[写入文件当然是JSON字符串楼] 实际上,json.dumps()只是帮我们做了一个字符串的转 ...
- Python学习---重点模块之pickle
仅仅支持Python里面的函数等相关功能的实现,而且pickle写入的内容是看不出来的,读取的时候要求有原内容 pickled的写入: import pickle def fun(): print(' ...
- Python学习---重点模块之shelve
简单示例 import shelve f = shelve.open(r'shelve.txt') f['info'] = {'name':'ftl', 'age':23, 'sex': 'male' ...
- Python学习---重点模块之xml
xml是实现不同语言或程序之间进行数据交换的协议,跟json差不多,但json使用起来更简单 数据准备 <?xml version="1.0"?> <data&g ...
- python异步编程模块asyncio学习(二)
尽管asyncio应用通常作为单线程运行,不过仍被构建为并发应用.由于I/O以及其他外部事件的延迟和中断,每个协程或任务可能按一种不可预知的顺序执行.为了支持安全的并发执行,asyncio包含了thr ...
随机推荐
- 《LeetBook》leetcode题解(14):Longest Common Prefix[E]
我现在在做一个叫<leetbook>的免费开源书项目,力求提供最易懂的中文思路,目前把解题思路都同步更新到gitbook上了,需要的同学可以去看看 书的地址:https://hk029.g ...
- WPF通过<x:Array>直接为ListBox的ItemsSource赋值
<!--其中sys前缀是在xmlns中引入了System的命名空间--> <ListBox.ItemsSource> <x:Array Type="{x:Typ ...
- FocusBI:地产分析&雪花模型
微信公众号:FocusBI关注可了解更多的商业智能.数据仓库.数据库开发.爬虫知识及沪深股市数据推送.问题或建议,请关注公众号发送消息留言;如果你觉得FocusBI对你有帮助,欢迎转发朋友圈或在文章末 ...
- eclipse修改默认注释
(来源:https://www.cnblogs.com/yangjian-java/p/6674772.html) 一.背景简介 丰富的注释和良好的代码规范,对于代码的阅读性和可维护性起着至关重要的作 ...
- CSS小技巧(一)
左右布局 将内部的子元素加浮动,父元素清除浮动即可. 代码: <!DOCTYPE html> <html> <head> <title>test< ...
- Delphi下OpenGL2d绘图(06)-画图(多窗口、多视图、多个DC)
一.前言 在学习OpenGL的过程中,发现很多函数都是全局的.前面几章中都是在一个窗口DC中画图,那么要在多个窗口画图,需要怎么处理呢?网上方法有多种,这里采用其中一种,利用wglMakeCurren ...
- visual studio清理nuget包缓存
最近在使用nuget包的时候发现一个问题.昨天我组长明明发了一个新版本的包上去,可在我电脑上死活找不到这个新版本的包.刷新,重启vs,重启电脑,好长时间才出来.今天又碰到这个问题了,在同事电脑上都能搜 ...
- SVN使用指南
一:SVN服务器搭建和使用. 1. 首先来下载和搭建SVN服务器,下载地址如下: http://subversion.apache.org/packages.html,进入网址后,滚动到浏览器 ...
- jQuery 自制上传头像插件-附带Demo实例(ajaxfileupload.js第三弹)
这篇文章主要是对前两篇关于ajaxfileupload.js插件的文章 <ASP.NET 使用ajaxfileupload.js插件出现上传较大文件失败的解决方法(ajaxfileupload. ...
- layui登录后token问题
layui是一个非常简单且实用的后台管理系统搭建框架,里面的插件丰富使用简单,只需要在原有基础上进行修改即可,但是在数据处理方面略显薄弱,内置的jquery在实际过程中略显不足,若是能添加内置的mvc ...