我想打开一个包含以下内容的现有文件:
Hel2o. Th3ese a2re some cha3ra3ct2ers.
Her3e ar2e so5me m2or3e2 ch3aracters.
并将其写入另一个文件:
Hello. Thhhese aare some chaaaraaactters.
Herrre arre sooooome mmorrree chhharacters.
我想一个字符一个字符地读取字符串,当达到整数n时,打印前一个字符n的次数会增加,但我不确定如何为此编写代码。现在我的情况是:
def decode(user_file):
file1 = open(user_file, 'r')
file2 = open('test.txt', 'w')
char = file1.read(1)
while char:
file2.write(char)
char = file1.read(1)
这将从所选文件读取代码并将其打印到输出文件,但是如何在字符后检测整数,然后在继续之前打印该字符n次?我使用的是python3.7
提前感谢:)
假设您的文件内容存储在变量
s
中,您可以将str.join
与以下生成器表达式一起使用,该表达式通过压缩字符串本身(但分开一个索引)来对字符进行配对,并测试配对中的第二个字符是否是数字,以便将第一个字符重复多次:这将返回:
检查字符串中的字符是否是数字或不使用regex
使用正则表达式和sub的解决方案:
输出
解释
模式
(\w)(\d+)
匹配一个字母后跟一组或多个数字。如果找到该模式,则使用函数repl
替换它相关问题 更多 >
编程相关推荐