python - python 每 4 个选项卡写入一个新行文本文件

标签 python

如果我有以下使用制表符分隔打印的数据

print str(z).translate(None,"([]){},\"'").replace(' ','\t')

0.016611783537845426    0.5728972505882961  0.1723653381777387   0.44730982873820446    10  11  10  0.016611783537845426     0.5728972505882961 0.2526385373738682  0.03281263933004819 10  12  10  0.016611783537845426    0.5728972505882961  0.509414248773428

如何写入新的 txt 文件,但每 4 个选项卡开始新行。所以得到 4 列。

尝试过\n 的多种变体,但我很垃圾。

例如:

 open("file.txt", "w").write('\n'.join(str(z).translate(None,"([]){},\"'").replace(' ','\t')))

为每个字符返回换行符。

最佳答案

您可以使用itertools documentation中的石斑鱼食谱:

import itertools as it
def grouper(n, iterable, fillvalue=None):
    "grouper(3, 'ABCDEFG', 'x') --> ABC DEF Gxx"
    args = [iter(iterable)] * n
    return it.izip_longest(fillvalue=fillvalue, *args)

然后您可以生成输出:

values = str(z).translate(None,"([]){},\"'").split()
output = '\n'.join('\t'.join(x for x in g if x) for g in grouper(4, values))

或者,如果您想将其写入文件,请使用f.writelines:

f.writelines('\t'.join(x for x in g if x) + '\n' for g in grouper(4, values))

关于python - python 每 4 个选项卡写入一个新行文本文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10078086/

相关文章:

python - 并行求解微分方程,python

python - 如何在kivy中自定义 slider

python - 在没有numpy polyfit的情况下在python中拟合二次函数

python - 在 python selenium 中切换窗口时出错

python - 为 celery 任务编写测试时出错

python - Pandas :两个 bool 系列的总和

python - 当我捕捉到异常时,如何获取上一帧的类型、文件和行号?

python - 垂直投影和水平投影

Python 请求弹出验证

python - 拆分数据框中的字符串