python小记--攻防世界Misc文件类型解题脚本编写

逗号变空格

对应攻防世界Misc文件类型

已知有逗号分隔的字符串

50,4B,03,04,14,00,00,00,08,00,09,5D,08,55,EA,3B,0E,DC,28,00,00,00,26,00,00,00,08,00,00,00,66,6C,61,67,2E,74,78,74,4B,CB,49,4C,AF,36,48,4A,4D,36,48,4C,31,4E,49,34,32,34,34,4E,36,37,48,35,35,48,4B,31,35,33,34,4F,B2,48,35,4F,B3,AC,05,00,50,4B,01,02,14,00,14,00,00,00,08,00,09,5D,08,55,EA,3B,0E,DC,28,00,00,00,26,00,00,00,08,00,24,00,00,00,00,00,00,00,20,00,00,00,00,00,00,00,66,6C,61,67,2E,74,78,74,0A,00,20,00,00,00,00,00,01,00,18,00,1B,11,1F,93,D8,AA,D8,01,1B,11,1F,93,D8,AA,D8,01,02,45,FB,8A,D8,AA,D8,01,50,4B,05,06,00,00,00,00,01,00,01,00,5A,00,00,00,4E,00,00,00,00,00

现在要把逗号转换成空格

这里需要用到split方法

split()方法含义:
​
是将指定字符串按某指定的分隔符进行拆分,拆分将会形成一个字符串的数组并返回。
语法
​
split() 方法语法:
​
str.split(str="", num=string.count(str)).
​
参数
​
str -- 分隔符,默认为所有的空字符,包括空格、换行(\n)、制表符(\t)等。
num -- 分割次数。默认为 -1, 即分隔所有。如果参数 num 有指定值,则分隔 num+1 个子字符串
数组中的每元素都各自对应一个索引值,就好比在数据库的表中每行数据纪录都拥有自己的索引ID一样
数组元素的索引值是从0开始计数的,也就是说第一个元素的索引值是0,往后依次加1。
举例:
​
url = 'C://aaa/image/my.jpg'
​
filename = url.split('/')[-1] #以‘/ ’为分割符,为字符串数组,以[-1]为索引,保留最后一段
​
print(filename)
​
结果是:my.jpg
​
​
假如图片的路径为
​
img_path ="aaa\\bbb\\ccc\\cat.0.jpg"
​
label = img_path.split("\\")[-1].split(".'')[0]
​
含义为提取图像绝对路径中,猫或者狗的名cat 或者 dog
​
第一个split(''\\'')[-1]意思是:将整个路径以“\\”分割成字符串数组,[-1]是索引值,取最后一个索引值是cat.0.jpg
​
第二个split(''.'')[0]意思是:将cat.0.jpg 以"."分割成字符串数组 "cat","0","jpg",然后取第0个位置索引,值为cat提取出来

至此 拆分部分的代码就可以写出来了

str="50,4B,03,04,14,00,00,00,08,00,09,5D,08,55,EA,3B,0E,DC,28,00,00,00,26,00,00,00,08,00,00,00,66,6C,61,67,2E,74,78,74,4B,CB,49,4C,AF,36,48,4A,4D,36,48,4C,31,4E,49,34,32,34,34,4E,36,37,48,35,35,48,4B,31,35,33,34,4F,B2,48,35,4F,B3,AC,05,00,50,4B,01,02,14,00,14,00,00,00,08,00,09,5D,08,55,EA,3B,0E,DC,28,00,00,00,26,00,00,00,08,00,24,00,00,00,00,00,00,00,20,00,00,00,00,00,00,00,66,6C,61,67,2E,74,78,74,0A,00,20,00,00,00,00,00,01,00,18,00,1B,11,1F,93,D8,AA,D8,01,1B,11,1F,93,D8,AA,D8,01,02,45,FB,8A,D8,AA,D8,01,50,4B,05,06,00,00,00,00,01,00,01,00,5A,00,00,00,4E,00,00,00,00,00"
s=str.split(",")

再用一个for循环

for i in s:
a = a+i+"\x20"  #\x20在python中代表空格
print(a)

至此拆分和循环代码都写好了 基本代码完成

下面是完整代码

str="50,4B,03,04,14,00,00,00,08,00,09,5D,08,55,EA,3B,0E,DC,28,00,00,00,26,00,00,00,08,00,00,00,66,6C,61,67,2E,74,78,74,4B,CB,49,4C,AF,36,48,4A,4D,36,48,4C,31,4E,49,34,32,34,34,4E,36,37,48,35,35,48,4B,31,35,33,34,4F,B2,48,35,4F,B3,AC,05,00,50,4B,01,02,14,00,14,00,00,00,08,00,09,5D,08,55,EA,3B,0E,DC,28,00,00,00,26,00,00,00,08,00,24,00,00,00,00,00,00,00,20,00,00,00,00,00,00,00,66,6C,61,67,2E,74,78,74,0A,00,20,00,00,00,00,00,01,00,18,00,1B,11,1F,93,D8,AA,D8,01,1B,11,1F,93,D8,AA,D8,01,02,45,FB,8A,D8,AA,D8,01,50,4B,05,06,00,00,00,00,01,00,01,00,5A,00,00,00,4E,00,00,00,00,00"
s=str.split(",")
a=""
for i in s:
a = a+i+"\x20"  #\x20在python中代表空格
print(a)

运行结果

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

tzyyyyyy

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值