字符串拆分和拼接(含list拼接)---基于python
最近得一超长字符串如下:
l=“5245474953544552207369703a3137322e3136312e31302e323232205349502f322e300d0a5669613a205349502f322e302f554450203137322e3136312e31302e3133323a34303135333b72706f72743b6272616e63683d7a39684734624b30343836380d0a4d61782d466f7277617264733a2037300d0a546f3a203c7369703a3230303030303230303037403137322e3136312e31302e3232323e0d0a46726f6d3a203c7369703a3230303030303230303037403137322e3136312e31302e3232323e3b7461673d7a39684734624b35343030313138360d0a43616c6c2d49443a203732363539323238393235320d0a435365713a20312052454749535445520d0a436f6e746163743a203c7369703a3230303030303230303037403137322e3136312e31302e3133323a34303135333b7472616e73706f72743d7564703e0d0a557365722d4167656e743a205a65642d332d5044410d0a457870697265733a20313830300d0a5074742d457874656e73696f6e3a20336768616e647365742072656769737465720d0a5074742d4174747269627574653a2076657273696f6e3d22332e362e302e303138325f646562756731222c746869643d224132303030313230393844314546222c766f70743d312e300d0a5074742d4c6f67696e496e666f3a206d6f64653d6d616e75616c2c696d65693d41323030303132303938443145462c69636369643d38393836303331363438323031313437353032372c696d73693d3436303033383632303338333431360d0a436f6e74656e742d4c656e6774683a20300d0a0d0a”
我想对这一长串字符串进行每两个字符的分割处理,怎么办呢?想到了正则表达式re,那下面就是实现:
import re
l="5245474953544552207369703a3137322e3136312e31302e323232205349502f322e300d0a5669613a205349502f322e302f554450203137322e3136312e31302e3133323a34303135333b72706f72743b6272616e63683d7a39684734624b30343836380d0a4d61782d466f7277617264733a2037300d0a546f3a203c7369703a3230303030303230303037403137322e3136312e31302e3232323e0d0a46726f6d3a203c7369703a3230303030303230303037403137322e3136312e31302e3232323e3b7461673d7a39684734624b35343030313138360d0a43616c6c2d49443a203732363539323238393235320d0a435365713a20312052454749535445520d0a436f6e746163743a203c7369703a3230303030303230303037403137322e3136312e31302e3133323a34303135333b7472616e73706f72743d7564703e0d0a557365722d4167656e743a205a65642d332d5044410d0a457870697265733a20313830300d0a5074742d457874656e73696f6e3a20336768616e647365742072656769737465720d0a5074742d4174747269627574653a2076657273696f6e3d22332e362e302e303138325f646562756731222c746869643d224132303030313230393844314546222c766f70743d312e300d0a5074742d4c6f67696e496e666f3a206d6f64653d6d616e75616c2c696d65693d41323030303132303938443145462c69636369643d38393836303331363438323031313437353032372c696d73693d3436303033383632303338333431360d0a436f6e74656e742d4c656e6774683a20300d0a0d0a"
a=re.findall(r'.{2}',l)
print type(a)
print a
通过打印我们发现re出来的是list,打印如下:
<type 'list'>
['52', '45', '47', '49', '53', '54', '45', '52', '20', '73', '69', '70', '3a', '31', '37', '32', '2e', '31', '36', '31', '2e', '31', '30', '2e', '32', '32', '32', '20', '53', '49', '50', '2f', '32', '2e', '30', '0d', '0a', '56', '69', '61', '3a', '20', '53', '49', '50', '2f', '32', '2e', '30', '2f', '55', '44', '50', '20', '31', '37', '32', '2e', '31', '36', '31', '2e', '31', '30', '2e', '31', '33', '32', '3a', '34', '30', '31', '35', '33', '3b', '72', '70', '6f', '72', '74', '3b', '62', '72', '61', '6e', '63', '68', '3d', '7a', '39', '68', '47', '34', '62', '4b', '30', '34', '38', '36', '38', '0d', '0a', '4d', '61', '78', '2d', '46', '6f', '72', '77', '61', '72', '64', '73', '3a', '20', '37', '30', '0d', '0a', '54', '6f', '3a', '20', '3c', '73', '69', '70', '3a', '32', '30', '30', '30', '30', '30', '32', '30', '30', '30', '37', '40', '31', '37', '32', '2e', '31', '36', '31', '2e', '31', '30', '2e', '32', '32', '32', '3e', '0d', '0a', '46', '72', '6f', '6d', '3a', '20', '3c', '73', '69', '70', '3a', '32', '30', '30', '30', '30', '30', '32', '30', '30', '30', '37', '40', '31', '37', '32', '2e', '31', '36', '31', '2e', '31', '30', '2e', '32', '32', '32', '3e', '3b', '74', '61', '67', '3d', '7a', '39', '68', '47', '34', '62', '4b', '35', '34', '30', '30', '31', '31', '38', '36', '0d', '0a', '43', '61', '6c', '6c', '2d', '49', '44', '3a', '20', '37', '32', '36', '35', '39', '32', '32', '38', '39', '32', '35', '32', '0d', '0a', '43', '53', '65', '71', '3a', '20', '31', '20', '52', '45', '47', '49', '53', '54', '45', '52', '0d', '0a', '43', '6f', '6e', '74', '61', '63', '74', '3a', '20', '3c', '73', '69', '70', '3a', '32', '30', '30', '30', '30', '30', '32', '30', '30', '30', '37', '40', '31', '37', '32', '2e', '31', '36', '31', '2e', '31', '30', '2e', '31', '33', '32', '3a', '34', '30', '31', '35', '33', '3b', '74', '72', '61', '6e', '73', '70', '6f', '72', '74', '3d', '75', '64', '70', '3e', '0d', '0a', '55', '73', '65', '72', '2d', '41', '67', '65', '6e', '74', '3a', '20', '5a', '65', '64', '2d', '33', '2d', '50', '44', '41', '0d', '0a', '45', '78', '70', '69', '72', '65', '73', '3a', '20', '31', '38', '30', '30', '0d', '0a', '50', '74', '74', '2d', '45', '78', '74', '65', '6e', '73', '69', '6f', '6e', '3a', '20', '33', '67', '68', '61', '6e', '64', '73', '65', '74', '20', '72', '65', '67', '69', '73', '74', '65', '72', '0d', '0a', '50', '74', '74', '2d', '41', '74', '74', '72', '69', '62', '75', '74', '65', '3a', '20', '76', '65', '72', '73', '69', '6f', '6e', '3d', '22', '33', '2e', '36', '2e', '30', '2e', '30', '31', '38', '32', '5f', '64', '65', '62', '75', '67', '31', '22', '2c', '74', '68', '69', '64', '3d', '22', '41', '32', '30', '30', '30', '31', '32', '30', '39', '38', '44', '31', '45', '46', '22', '2c', '76', '6f', '70', '74', '3d', '31', '2e', '30', '0d', '0a', '50', '74', '74', '2d', '4c', '6f', '67', '69', '6e', '49', '6e', '66', '6f', '3a', '20', '6d', '6f', '64', '65', '3d', '6d', '61', '6e', '75', '61', '6c', '2c', '69', '6d', '65', '69', '3d', '41', '32', '30', '30', '30', '31', '32', '30', '39', '38', '44', '31', '45', '46', '2c', '69', '63', '63', '69', '64', '3d', '38', '39', '38', '36', '30', '33', '31', '36', '34', '38', '32', '30', '31', '31', '34', '37', '35', '30', '32', '37', '2c', '69', '6d', '73', '69', '3d', '34', '36', '30', '30', '33', '38', '36', '32', '30', '33', '38', '33', '34', '31', '36', '0d', '0a', '43', '6f', '6e', '74', '65', '6e', '74', '2d', '4c', '65', '6e', '67', '74', '68', '3a', '20', '30', '0d', '0a', '0d', '0a']
我最终的目的是让原始字符串每隔两个字符加一个\x,那就在把这个list在增加完\x后再拼起来,如下:
result="\\x".join(a)
print result 拓展:
将生成的list每隔元素都固定加一个\x,仍以list输出
def list_add_str(l):
return map(lambda x: 'str_'+x, l) print list_add_str(['abc','def','xyz'])
字符串拆分和拼接(含list拼接)---基于python的更多相关文章
- sh_19_字符串拆分和拼接
sh_19_字符串拆分和拼接 # 假设:以下内容是从网络上抓取的 # 要求: # 1. 将字符串中的空白字符全部去掉 # 2. 再使用 " " 作为分隔符,拼接成一个整齐的字符串 ...
- Python | 字符串拆分和拼接及常用操作
一.字符串拆分 str = "hola ha1 ha2 china ha3 " # partition 从左侧找到第一个目标,切割成三组数据的[元组] str1 = str.par ...
- 单列表变量与字符串拆分的对照(SqlServer)
最近遇到一个问题,在SQLServer中,需要根据用户传入的一系列ID值更新对应的记录.有两种方法,一种是将这些ID值使用逗号分隔,拼接成字符串传入,一种是以表变量的方式传入.最开始,我想当然的认为传 ...
- sql之cursor的简介和字符串拆分(split)与游标的使用
字符串拆分(split)与游标的使用 CREATE TABLE Plates ( ,), ) NOT NULL, [BusinessId] INT NOT NULL, ) ),),), SELECT ...
- mysql字符串拆分实现split功能
转自:https://blog.csdn.net/pjymyself/article/details/81668157有分隔符的字符串拆分题目要求数据库中 num字段值为: 实现的效果:需要将一行数据 ...
- UTF-8编码的字符串拆分成单字、获取UTF-8字符串的字符个数的代码及原理
一.字符编码简介 1. ASCII码 在计算机内部,所有的信息最终都表示为一个二进制的字符串.每一个二进制位(bit)有0和1两种状态,因此八个二进制位就可以组合出256种状态,这被称为一个字节(by ...
- SQL2000/2005字符串拆分为列表通用函数
------------------------------------------------------------------ -- Author : htl258(Tony) -- Dat ...
- 基于Python的数据分析(2):字符串编码
在上一篇文章<基于Python的数据分析(1):配置安装环境>中的第四个步骤中我们在python的启动步骤中强制要求加载sitecustomize.py文件并设置其默认编码为"u ...
- Python 基于python实现的http接口自动化测试框架(含源码)
基于python实现的http+json协议接口自动化测试框架(含源码) by:授客 QQ:1033553122 欢迎加入软件性能测试交流 QQ群:7156436 由于篇幅问题,采用百度网 ...
- SQL 字符串拆分
字符串拆分: ALTER FUNCTION [dbo].[f_Split](@sText nvarchar(max),@split NVARCHAR(20)) RETURNS @t TABLE (id ...
随机推荐
- SQL中的CONVERT();cast()函数
SQLSERVER中CONVERT函数格式: CAST (expression AS data_type) 参数说明: expression:任何有效的SQLServer表达式. AS:用于分隔两个参 ...
- 虚拟机与ARM之间的交叉编译总结
通过三大服务的配置,我们可以在ARM中下载内核和文件系统.我们通过在虚拟机中编程,得到的程序不能在ARM中运行,需要经过一个交叉编译.得到的可执行程序可以在ARM中运行,此时不能在虚拟机Linux中运 ...
- 韦东山linux学习之ubuntu 9.10 软件源 问题
跟着开发板视频学习,安装了ubuntu9.10,然而由于现在官方已经不再提供软件更新的服务,软件我一直安装不上,搞了两天终于解决了. 一.安装VMware,配置等等就不详细说了,安装好系统后,网能连上 ...
- JavaScript中使用比较多的两种创建对象的方式
1.使用组合模式创建对象 原型模式创建对象适合封装方法,构造方法模式创建对象适合封装属性 组合方法缺点:将构造方法和原型分开写 <script type="text/javascrip ...
- 准确率(accuracy),精确率(Precision),召回率(Recall)和综合评价指标(F1-Measure )----转
原文:http://blog.csdn.net/t710smgtwoshima/article/details/8215037 Recall(召回率);Precision(准确率);F1-Meat ...
- POJ3006-Dirichlet's Theorem on Arithmetic Progressions
题意: 设一个等差数列,首元素为a,公差为d 现在要求输入a,d,n ,要求找出属于该等差数列中的第n个素数并输出 思路:空间换时间是个主旋律.素数表的生成用素数筛选法.方法是从2开始,对每个目前还标 ...
- 20155213 2016-2017-2《Java程序设计》课程总结
20155213 2016-2017-2<Java程序设计>课程总结 每周作业链接汇总 预备作业1:我所期望的师生关系 预备作业2:C语言的学习的回忆 预备作业3:小议linux 第一周作 ...
- 20155310 2016-2017-2 《Java程序设计》第十周学习总结
20155310 2016-2017-2 <Java程序设计>第十周学习总结 教材学习内容总结 网络编程 •网络编程就是在两个或两个以上的设备(例如计算机)之间传输数据.程序员所作的事情就 ...
- 20155318 《Java程序设计》实验一(Java开发环境的熟悉)实验报告
20155318 <Java程序设计>实验一(Java开发环境的熟悉)实验报告 一.实验内容及步骤 (一)命令行下Java程序开发 步骤一(新建文件夹): 打开windows下的cmd → ...
- 使用WinIO库实现保护模式下的IO和内存读写
问题已解决: 原因是函数的调用方式与WinIO中不一致,使用的时候漏掉了__stdcall. 函数原定义为: 在实际的GPIO读写中遇到以下问题: SetPortVal可正常写入,但是GetPortV ...