python - Python3 RLE 字符
问题描述
我正在学习python,我有这段代码可以用空格压缩和解压缩,我想知道我怎么能得到字母,也就是说,只取字符而不是空格
堆栈溢出希望我用代码添加更多关于我的问题的评论,所以我写这个只是忽略这部分好吗?
archive = open('text.txt', 'r')
archiveS = archive.read()
archiveC = open('./archive2.txt', 'w')
archiveD = open ('./archive3.txt', "w")
list = []
compressed = ''
uncompressed = ''
for line in archiveS:
for ch in line:
list.append(ch)
white = 0
text = len(list)
if white < text:
for letter in archiveS:
if letter == ' ':
white += 1
elif white > 0:
compressed += 'x' + str(white)
white = 0
if letter!=' ':
compressed+=letter
archiveC.write(compressed)
print(archiveC)
print(compressed)
counter = 0
lst = list2 = []
for letter in compressed:
if letter == 'x':
pass
elif letter.isnumeric():
num = int(letter)
list2.append(' '*num)
uncompressed = lst
else:
list2.append(letter)
strDes =''.join(uncompressed)
print(uncompressed, 'descompressed')
archiveD.write(strDes)
archive.close()
archiveC.close()
archiveD.close()
解决方案
推荐阅读
- protractor - 量角器在配置中有 2 个框架
- android - Picasso 不将 url 加载到 ImageView 传递值时抛出构造函数
- sql - 创建了一个包含主键列和两个外键列的连接表,而不是拉入数据
- c# - 无法创建目录:System.UnauthorizedAccessException 错误
- macos - 如何在 macOS 上获取 awk 版本?
- r - 使用 r 中其他两列的 group_by 计算行数
- haskell - 如何修复haskell中的“函数中的非详尽模式”错误?
- java - 如何删除JPanel内图像和文本之间的空白?
- regex - 如何匹配不包含特定字符串的字符串
- android - 如何使用 kotlin 将一列复制到 SQlite 数据库中的另一列