Python练习


1.有一个文件,文件名为output_1981.10.21.txt。下面使用Python: 读取文件名中的日期时间信息,并找出这一天是周几。将文件改名为output_YYYY-MM-DD-W.txt (YYYY:四位的年,MM:两位的月份,DD:两位的日,W:一位的周几,并假设周一为一周第一天)


# Let output_1981.10.21.txt be in the current directory
 
import  os,re, datetime
 
filename = 'output_1981.10.21.txt'
get_time = re.search("\d{4}\.\d{2}\.\d{2}\.", filename)
filename_time = get_time.group(0) # The date in the file name is saved in filename_time
print filename_time
date = datetime.date(1981,10,21)
w = date.weekday() + 1
W = str(w)
os.rename("output_1981.10.21.txt", "output_1981-10-21-" + W + ".txt")

2.python正则表达式替换字符串

有一段html代码,不符合xml格式规范,所以要用python对它进行下转换。其中要转换的地方有:

1、[&]转为[&](但是不能把[ ]转了);
2、把代码中的["=""]去掉;
3、把[svg]和[path]标签都改为[svg:svg]和[svg:path];
4、关闭[img]标签;
5、将url()中的["]转为[']

使用正则对html进行了处理。下面就是代码:

import re
str_url = 'test,&nbsp;url("http://www.baidu.com")&,dddddd "="" <svg></svg><path></path><img src="http://www.baidu.com">ininnnin<img src="http://www.dd.com">'
#2、把代码中的["=""]去掉;
#3、把[svg]和[path]标签都改为[svg:svg]和[svg:path];
str_url = str_url.replace('"=""','')
str_url = str_url.replace('svg','svg:svg')
str_url = str_url.replace('path', 'svg:path')

#1、[&]转为[&amp;](但是不能把[&nbsp;]转了);
url_re = re.compile('&(?!\w{4};)')
str_result = url_re.sub('&amp;', str_url)

#4、关闭[img]标签;
img_list = re.findall('<img.*?>',str_result)

for img_r in img_list:
    str_result = str_result.replace(img_r,img_r + '</img>')

#5、将url()中的["]转为[']
url_list = re.findall('url\(".*?"\)',str_result)
print url_list
for url_r in url_list:
    url_new = url_r.replace('"','\'')
    str_result = str_result.replace(url_r,url_new)
print str_result

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值