python - 如果字符串包含每一行的特定值,则替换字符串
问题描述
我试图解析在不同行上包含长字符串的 csv。如果字符串包含特定值,我想为发生的每一行替换每个长字符串。
为什么我要替换长字符串是因为 csv-file 会破坏字符串以适应行。
csv 文件的示例是:
number | payload
1230 00023030303030303030303030303030...
1234 00033030303030303030330303030303...
1236 30303030303030004303030303030303...
1238 0005303030...
1240 (blank)
1241 (blank)
1248 0006303030...
长字符串中的以下 uniq 四位数值是十六进制形式 1-100(十六进制 1-63)的计数器。
因此,如果该行包含计数器的值,我尝试替换该值,但没有成功。
问题是字符串中的四个 uniq 值可能与计数器不匹配,因此将其替换为粗略值。
def stringconv(filefind)->str:
strcount=pd.read_csv(filefind, sep='\t', usecols=[2], na_filter=False, names=col_name)
for i in range(256):
counter = "{:02x}".format(i)
hxstr = strcount["payload"].str.match("00" + str(counter))
hexstring = strcount[strcount["payload"].str.match("00" + str(counter))]
print(hexstring)
j = ("00" + str(counter))
for x in hxstr:
if x == True:
strcount.replace(x,j, inplace=True)
如上所示的现有文件应该看起来更像:
number | payload
1230 0002
1234 0003
1236 0004
1238 0005
1240 (blank)
1241 (blank)
1248 0006
... ...
解决方案
推荐阅读
- coldfusion - 锚标签不能正常工作,而是在 cfemail 内容中显示完整的字符串
- python - Tensorflow - 卷积神经网络精度卡住
- tensorflow - 如何将 tensorflow 模型(比如 *.pb 格式)转换为 armnn(*.armnn 格式)
- javascript - 单元测试 localStorage.getItem 已经在文档上调用了吗?
- reactjs - 如何根据异步调度的动作执行多个生成器
- android - 如何将 LinearLayout 移动到工具栏的右侧
- python - 如何比较熊猫中to_numeric中的值“nan”
- google-cloud-platform - 为 Google Cloud Storage 中的存储分区设置日志记录
- android - Android studio - 无法从文件 app.iml 加载设置,文件不存在?
- perforce - helix core 将工作区根设置为临时文件夹