首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >使用python编写文件,将内容移到新行

使用python编写文件,将内容移到新行
EN

Stack Overflow用户
提问于 2017-05-24 03:06:10
回答 3查看 1K关注 0票数 0

我正在尝试创建一个python程序来读取文件中的值,并以某种格式将它们写入另一个文件。让我详细解释一下我的任务!

我有一个在十六进制中有图像像素值的文件。

AA 12 C5 95 ..。

我想将这个值列表转换成这样的格式

0: AA; 1: 12; 2: C5; 3: 95; ..。

我随身带着以下代码

代码语言:javascript
运行
复制
def makeAddress(address, HEX):
    return str("\t%s    :   %s;" % (address, HEX));

imageFile = open("Image.txt", "r")
mifFile = open("INSTRUCTION_FILE.mif", "w")

address = 0;

for line in imageFile:
    mifFile.write(makeAddress(address, line))
    address = address + 1;

imageFile.close()
mifFile.close()

但是当我试图运行这个程序时,输出是;

0: AA 1: 12 2: C5 ;3: 95 ;.

为什么我不能让;与每一行内联,而不是把它放到第二行呢?有什么建议吗?:)提前谢谢!

EN

Stack Overflow用户

发布于 2017-05-24 03:36:00

下面是您的代码的修改版本,可以工作。在您的示例中,每个数字之间有一个空行,因此我添加了一个测试来处理这个问题,因为这将导致不正确的输出。

代码语言:javascript
运行
复制
def makeAddress(address, HEX):
    return str("\t%s    :   %s;" % (address, HEX));

imageFile = open("Image.txt", "r")
mifFile = open("INSTRUCTION_FILE.mif", "w")

address = 0;

for line in imageFile:
    if line.strip(): # Checks if line is empty string
        mifFile.write(makeAddress(address, line.strip()) + "\n")
        address = address + 1;

imageFile.close()
mifFile.close()
票数 1
EN
查看全部 3 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/44148266

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档