python的模块与文件

一、模块与包

  1. 文件夹中有__init__.py文件,这个文件夹就可以看作一个包。
    文件夹中的每个python文件就是模块。
  2. 在init文件中导入同级文件内的函数时:from .cat import action (加一个点).
  3. pip安装的包只是安装在一个project中.
  4. 从镜像中安装包:pip install -i 链接 ipython
    删除:pip uninstall ipython
  5. datetime
import datetime

print(datetime.datetime.now())
print(datetime.datetime(2021, 3, 1, 15, 13, 18, 9888))#转换成时间类型

2022-10-09 19:59:11.475753
2021-03-01 15:13:18.009888

  1. 时间对象转字符串
object.strftime('%Y-%m-%d %H:%M:%S')
    1. 将字符串转化成时间类型
strptime (now_str, '%Y-%m-%d %H:%M:%S')
  1. 生成时间戳函数
import time

now = time.time() 

二、路径

  1. os.getcwd():返回当前路径。
  2. os.path.join(‘path1’,‘path2’)
  3. 创建文件
f = open ('package_datetime.py', 'r')
data = f.readlines()
f.close()
  1. 序列化
json.load() 从json文件中读取数据
json.loads()str类型的数据转换成dict类型
json.dump()将dict类型的数据转成str
json.dumps()将数据以json的数据类型写入文件中

三、常用函数

random.random() # 随机返回0-1之间的浮点数
random.uniform(a,b) #随机返回a-b之间的浮点数
random.randint(a,b) #随机返回a-b之间的整数
random.randrange(a, b, step)  #随机返回a-b之间,步长为step的整数
random.randrange(5, 10, 3)  #随机返回的值只能是5或者8 

四、正则表达式

  1. re.research(‘规则’,变量) :只匹配一次
info = 'my name is xiao ming, and i am major in english'
result = re.search('x([a-zA-Z])a', info)
print(result)

<re.Match object; span=(11, 14), match='xia'>
  1. \d:匹配十进制数字
    findall((‘规则’,变量)匹配多次
info = 'my name is xiao ming, and i am major in english,i am 30 years old.'
result = re.search('\d', info)
print(result)
result_1 = re.findall('\d', info)
print(result_1)

<re.Match object; span=(53, 54), match='3'>
['3', '0']
  1. \s:匹配任何空格字符,包括\n\t\r\v\f.
info = 'my name is xiao ming, and i am major in english,i am 30 years old.'
result = re.findall('\s', info)
print(result)

[' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ']
  1. \z($):匹配字符串结尾
import re

info = 'my name is qin simeng, and i am major in english'
print(re.findall('english\Z', info))
print(re.findall('lish\Z', info))
print(re.findall('my\Z', info))

['english']
['lish']
[]
  1. \A(^):匹配字符串开头
info = 'my name is xiao ming, and i am major in english,i am 30 years old.'
result = re.findall('\Amy', info)
print(result)

['my']
  1. \w+:匹配一次或多次数字或者字母。
info = 'dewei@immoc.com'
result = re.findall('\w+', info)
print(result)

['dewei', 'immoc', 'com']
# 意思是用符号把数字、字母组合拆开,返回一个列表。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值