python常用内置模块
#持续更新
#在使用内置模块的时候需要导入,例如import abc,则导入abc模块,当然模块也可以自己写,相当于一个类,后面放到类里说,这个因为环境闲置,有些无法执行,只能理解了
#os系统操作
import os
os.system('ls') #调用系统命令,并返回执行结果,os.system('dir')....
os.popen('ls') #和system相似,system会直接把结果打印到屏幕上,popen可以把结果返回给一个变量,然后可以用read()或for循环来遍历
os.chdir('/home/myuser/py') #windows可以直接把路径打成'c:\mypy'这种,os可以将路径改成通用路径
dir_path = os.getcwd() #获取到当前目录,结果是当前目录路径'/home/myuser/py'
os.listdir(dir_path) #获取指定目录下的所有文件和文件夹,结果是一个list
os.path.isdir(dir_name) #判断指定名称是否是文件夹,假如dir_name是个文件夹,则返回True,否则False
os.path.join(dir1,dir2,file1) #合并多个路径,可以是dir1,dir2...,file1
os.mkdir('py') #创建目录,和linux一样,没什么可说的
os.rmdir('py') #删除目录,必须是个空目录,和linux一样
os.environ.get(env) #获取环境变量,例os.environ.get('oracle_home')
os.getenv('my_home') #同os.environ.get(env),未获取到为返回None,不会报错
os.environ #增加环境变量,用法os.environ[‘ORACLE_HOME’] = ‘oracle_install_path’
#re正则操作
import re
a = "my py it's fucking greate!"
#几个常用的正则内容,|或,.通配符(同excel的*),?匹配0个或1个,*匹配0个或多个,+匹配1个或多个,\\符号\,\*比如要匹配*需要用\转义就是只是个*而不是0个或多个,^匹配行开始,$匹配行结尾
#(?<=XXX)前视,(?=XXX)后视,这个可以百度,我说不清,一般不会用,爬虫时候用的多
#[A-Z]大写的全部字母,[a-z]小写的全部字母,[0-9]全部数字
#正则默认是贪婪模式, .*?这样写是非贪婪模式,(XXX)匹配一个字符串
re_value = re.compile('^.*? ') #编译正则表达式,这段正则的意思是匹配从开始到第一个空格的内容,正则最好先编译下再用
re_search = re.search(re_value,a) #在字符串里找正则匹配的,这个不能直接显示需要group
print re_search.group() #结果是my
re_find = re.findall(re_value,a) #在字符串里找全部可以匹配的结果,返回一个迭代
for i in re_find:
print i #因为只有一行,因此只找到一个,结果是my,可以自己搞多行试试
re.sub(re_value,'',a) #用''替换re_value,就是把正则匹配的结果替换成空,当然也可以替换成别的,结果是"py it's fucking greate!"
#sys,这个功能很乱,我也不知道应该怎么归类
import sys
sys.argv #取得外部传入参数,返回一个list,平常执行命令python a.py,参数在后面输入,例
a.py
a = sys.argv #执行命令python a.py 111 222,执行后a变量的结果是[a.py,111,222]
sys.path.append('/home/user/bin') #增加python模块导入路径,默认导入路径是python_home,没有会在脚本所在目录寻找加载模块,如果你需要加载的模块不想放在这两个地方,又不想改变python_home变量,那就可以用这个功能了,这个只在当前脚本有效
#各种随机生成
import random
random.randint(1,10) #随机生成一个1到10的随机数,结果可能是1/2/3/4/5/6/7/8/9/10其中任意一个
a = ['a','b','c'] #搞个a存个list
random.choice(a) #从a里面随机抽个元素出来,结果可能是'a'/'b'/'c'
random.uniform(1,10) #随机生成一个1到10的随机小数,结果可能是。。。。。这个我就不写了,你懂的
#用户及密码
import getpass
getpass.getuser() #获取当前操作用户
python常用内置模块的更多相关文章
- Python常用内置模块之xml模块
xml即可扩展标记语言,它可以用来标记数据.定义数据类型,是一种允许用户对自己的标记语言进行定义的源语言.从结构上,很像HTML超文本标记语言.但他们被设计的目的是不同的,超文本标记语言被设计用来显示 ...
- Python 常用内置模块(加密模块 hashlib,Base64)
Python的hashlib提供了常见的摘要算法,如MD5,SHA1等等. 什么是摘要算法呢?摘要算法又称哈希算法.散列算法.它通过一个函数,把任意长度的数据转换为一个长度固定的数据串(通常用16进制 ...
- Python 常用内置模块详解
Python 的创始人为吉多·范罗苏姆(Guido van Rossum).1989年的圣诞节期间,吉多·范罗苏姆为了在阿姆斯特丹打发时间,决心开发一个新的脚本解释程序,作为ABC语言的一种继承.Py ...
- python --常用内置模块01
1.简单了解模块 模块就是我们把装有特定功能的代码进行归类的解构,从代码编写的单位来看我们的程序 从小到大的顺序:一条代码< 语句块<代码块(函数,类) < 模块 我 ...
- python常用内置模块,执行系统命令的模块
Subprocess模块 python3.5将使用Subprocess模块跟操作系统进行交互,比如系统命令,他将替换 os.system os.spawn* subprocess.run()方法封装的 ...
- python常用内置模块-random模块
random模块:用于生成随机数 '''关于数据类型序列相关,参照https://www.cnblogs.com/yyds/p/6123692.html''' random() 随机获取0 到1 之间 ...
- Python第五章__模块介绍,常用内置模块
Python第五章__模块介绍,常用内置模块 欢迎加入Linux_Python学习群 群号:478616847 目录: 模块与导入介绍 包的介绍 time &datetime模块 rando ...
- 简学Python第五章__模块介绍,常用内置模块
Python第五章__模块介绍,常用内置模块 欢迎加入Linux_Python学习群 群号:478616847 目录: 模块与导入介绍 包的介绍 time &datetime模块 rando ...
- Python基础之模块:2、包的使用和软件开发目录规范及常用内置模块
目录 一.包的使用 1.什么是包 2.包的具体使用 1.常规导入 2.直接导入包名 二.编程思想转变 1.面条阶段 2.函数阶段 3.模块阶段 三.软件目录开发规范 1.bin 2.conf 3.co ...
随机推荐
- List集合中的对象按照某个字段去重实现
package com.liying.banana.user; import java.util.ArrayList; import java.util.Comparator; import java ...
- redis cluster集群管理工具redis-trib.rb命令小结-运维笔记
redis-trib.rb是redis官方推出的管理redis集群的工具,集成在redis的源码src目录下,是基于redis提供的集群命令封装成简单.便捷.实用的操作工具.redis-trib.rb ...
- Docker基础教程(常用命令篇)
1.查看docker信息 # 查看docker版本 $docker version # 显示docker系统的信息 $docker info 2.启动容器 # 交互式 $docker run -it ...
- [总结]多项式类数学相关(定理&证明&板子)
目录 写在前面 前置技能 多项式相关 多项式的系数表示 多项式的点值表示 复数相关 复数的意义 复数的基本运算 单位根 代码相关 多项式乘法 快速傅里叶变换 DFT IDFT 算法实现 递归实现 迭代 ...
- EWS 流通知订阅邮件
摘要 查找一些关于流通知订阅邮件的资料,这里整理一下. 核心代码块 using System; using System.Collections.Generic; using System.Linq; ...
- 数据结构与算法--最小生成树之Prim算法
数据结构与算法--最小生成树之Prim算法 加权图是一种为每条边关联一个权值或称为成本的图模型.所谓生成树,是某图的一棵含有全部n个顶点的无环连通子图,它有n - 1条边.最小生成树(MST)是加权图 ...
- 两车追及或相遇问题(hdu1275)数学题
两车追及或相遇问题 Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total Subm ...
- TCP连接与OKHTTP复用连接池
Android网络编程(八)源码解析OkHttp后篇[复用连接池] 1.引子 在了解OkHttp的复用连接池之前,我们首先要了解几个概念. TCP三次握手 通常我们进行HTTP连接网络的时候我们会进行 ...
- django rest_framework Serializers 序列化组件
为什么要用序列化组件 当我们做前后端分离的项目~~我们前后端交互一般都选择JSON数据格式,JSON是一个轻量级的数据交互格式. 那么我们给前端数据的时候都要转成json格式,那就需要对我们从数据库拿 ...
- NOI.AC NOIP2018 全国热身赛 第四场
心路历程 预计得分:\(0 + 100 +100\) 实际得分:\(10 + 100 + 0\) 神TM T3模数为啥是\(1e9 + 9\)啊啊啊啊,而且我也确实是眼瞎...真是血的教训啊.. T2 ...