免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 2503 | 回复: 7
打印 上一主题 下一主题

问个问题 python给原来的字符串加东西再替换 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2014-10-07 22:03 |只看该作者 |倒序浏览
现在我有一个文本文件内容如下:
{北京 : 101010100,海淀 : 101010200,朝阳 : 101010300,顺义 : 101010400,怀柔 : 101010500,通州 : 101010600,昌平 : 101010700,延庆 : 101010800,丰台 : 101010900,石景山 : 101011000,大兴 : 101011100,房山 : 101011200,密云 : 101011300,门头沟 : 101011400,平谷 : 101011500,八达岭 : 101011600,佛爷顶 : 101011700,汤河口 : 101011800,密云上甸子 : 101011900,斋堂 : 101012000,霞云岭 : 101012100,上海 : 101020100,闵行 : 101020200,宝山 : 101020300,川沙 : 101020400,嘉定 : 101020500,南汇 : 101020600,金山 : 101020700,青浦 : 101020800,松江 : 101020900,奉贤 : 101021000,崇明 : 101021100,陈家镇 : 101021101,引水船 : 101021102}
我要把它变成像这样的效果:
{'北京' : 101010100,'海淀' : 101010200,'朝阳' : 101010300,'顺义' : 101010400,'怀柔' : 101010500,......'引水船' : 101021102}
也就是里面的所有中文加''号,想要用正则表达式去做,请问要怎么做,re.sub可做简单替换,要怎么样才能实现我说的效果???

论坛徽章:
0
2 [报告]
发表于 2014-10-08 11:21 |只看该作者
自己动手,丰衣足食,用\1可破之

论坛徽章:
4
金牛座
日期:2013-10-11 16:12:50卯兔
日期:2014-07-31 09:17:19辰龙
日期:2014-08-08 09:28:02狮子座
日期:2014-09-14 20:32:05
3 [报告]
发表于 2014-10-08 11:35 |只看该作者
本帖最后由 ssfjhh 于 2014-10-08 11:45 编辑
  1. In [10]: d = '{北京 : 101010100,海淀 : 101010200,朝阳 : 101010300,顺义 : 101010400,怀柔 : 101010500,通州 : 101010600,昌平 : 101010700,延庆 : 101010800,丰台 : 101010900,石景山 : 101011000,大兴 : 101011100,房山 : 101011200,密云 : 101011300,门头沟 : 101011400,平谷 : 101011500,八达岭 : 101011600,佛爷顶 : 101011700,汤河口 : 101011800,密云上甸子 : 101011900,斋堂 : 101012000,霞云岭 : 101012100,上海 : 101020100,闵行 : 101020200,宝山 : 101020300,川沙 : 101020400,嘉定 : 101020500,南汇 : 101020600,金山 : 101020700,青浦 : 101020800,松江 : 101020900,奉贤 : 101021000,崇明 : 101021100,陈家镇 : 101021101,引水船 : 101021102}'
  2. In [11]: re.sub('[\u4e00-\u9fa5]+', "'\g<0>'", d)
  3. Out[12]: "{'北京' : 101010100,'海淀' : 101010200,'朝阳' : 101010300,'顺义' : 101010400,'怀柔' : 101010500,'通州' : 101010600,'昌平' : 101010700,'延庆' : 101010800,'丰台' : 101010900,'石景山' : 101011000,'大兴' : 101011100,'房山' : 101011200,'密云' : 101011300,'门头沟' : 101011400,'平谷' : 101011500,'八达岭' : 101011600,'佛爷顶' : 101011700,'汤河口' : 101011800,'密云上甸子' : 101011900,'斋堂' : 101012000,'霞云岭' : 101012100,'上海' : 101020100,'闵行' : 101020200,'宝山' : 101020300,'川沙' : 101020400,'嘉定' : 101020500,'南汇' : 101020600,'金山' : 101020700,'青浦' : 101020800,'松江' : 101020900,'奉贤' : 101021000,'崇明' : 101021100,'陈家镇' : 101021101,'引水船' : 101021102}"
复制代码

论坛徽章:
4
金牛座
日期:2013-10-11 16:12:50卯兔
日期:2014-07-31 09:17:19辰龙
日期:2014-08-08 09:28:02狮子座
日期:2014-09-14 20:32:05
4 [报告]
发表于 2014-10-08 11:39 |只看该作者
本帖最后由 ssfjhh 于 2014-10-08 11:42 编辑
  1. d.replace(',', ",'",).replace(':', "':")
  2. Out[18]: "{北京 ': 101010100,'海淀 ': 101010200,'朝阳 ': 101010300,'顺义 ': 101010400,'怀柔 ': 101010500,'通州 ': 101010600,'昌平 ': 101010700,'延庆 ': 101010800,'丰台 ': 101010900,'石景山 ': 101011000,'大兴 ': 101011100,'房山 ': 101011200,'密云 ': 101011300,'门头沟 ': 101011400,'平谷 ': 101011500,'八达岭 ': 101011600,'佛爷顶 ': 101011700,'汤河口 ': 101011800,'密云上甸子 ': 101011900,'斋堂 ': 101012000,'霞云岭 ': 101012100,'上海 ': 101020100,'闵行 ': 101020200,'宝山 ': 101020300,'川沙 ': 101020400,'嘉定 ': 101020500,'南汇 ': 101020600,'金山 ': 101020700,'青浦 ': 101020800,'松江 ': 101020900,'奉贤 ': 101021000,'崇明 ': 101021100,'陈家镇 ': 101021101,'引水船 ': 101021102}"
复制代码
正则都不需要,两个replace搞定,你只需要手动在第一个汉字词语”北京“前加一个” ‘ “就可以了。

论坛徽章:
0
5 [报告]
发表于 2014-10-08 22:02 |只看该作者
本帖最后由 lzyshijune 于 2014-10-08 22:09 编辑

方法一,为什么我的是这样子,这是结果
{北京 ':' '101010100',海淀 ':' '101010200',朝阳 ':' '101010300',顺义 ':' '101010400',怀柔 ':' '101010500',通州 ':' '101010600',昌平 ':' '101010700',延庆 ':' '101010800',丰台 ':' '101010900',石景山 ':' '101011000',大兴 ':' '101011100',房山 ':' '101011200',密云 ':' '101011300',门头沟 ':' '101011400',平谷 ':' '101011500',八达岭 ':' '101011600',佛爷顶 ':' '101011700',汤河口 ':' '101011800',密云上甸子 ':' '101011900',斋堂 ':' '101012000',霞云岭 ':' '101012100',上海 ':' '101020100',闵行 ':' '101020200',宝山 ':' '101020300',。。。。。}
回复 3# ssfjhh


   

论坛徽章:
4
金牛座
日期:2013-10-11 16:12:50卯兔
日期:2014-07-31 09:17:19辰龙
日期:2014-08-08 09:28:02狮子座
日期:2014-09-14 20:32:05
6 [报告]
发表于 2014-10-08 23:27 |只看该作者
本帖最后由 ssfjhh 于 2014-10-08 23:27 编辑

回复 5# lzyshijune
  1. re.sub('[\u4e00-\u9fa5]+', "'\g<0>'", d)
复制代码
你用的是我的这段代码吗?

我用的Python3.4.1,没有问题。

论坛徽章:
11
2015年迎新春徽章
日期:2015-03-04 09:55:282017金鸡报晓
日期:2017-02-08 10:39:4215-16赛季CBA联赛之辽宁
日期:2016-12-15 10:24:1715-16赛季CBA联赛之佛山
日期:2016-11-30 09:04:2015-16赛季CBA联赛之江苏
日期:2016-04-29 15:56:1215-16赛季CBA联赛之同曦
日期:2016-04-12 13:21:182016猴年福章徽章
日期:2016-02-18 15:30:3415-16赛季CBA联赛之山东
日期:2016-02-16 11:37:52每日论坛发贴之星
日期:2016-02-07 06:20:00程序设计版块每日发帖之星
日期:2016-02-07 06:20:0015-16赛季CBA联赛之新疆
日期:2018-01-09 16:25:37
7 [报告]
发表于 2014-10-09 16:47 |只看该作者
这个是 jsion什么的吧.有现成报

论坛徽章:
0
8 [报告]
发表于 2014-10-11 01:00 |只看该作者
提示: 作者被禁止或删除 内容自动屏蔽
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP