使用open()函数创建文本文件时,如何删除在每行之后创建的空间?

2024-09-30 01:31:04 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在创建一个Flask网站,我想保存文本区域的文本输入,并将该文本保存到txt文件中。一切都很好,但问题是文本保存后,每行后面都有一个空行。 我不要这条空线。我想要普通文本,比如每行后面没有空行。这是我的密码:

这是app.py

@app.route('/textCreate', methods=['GET','POST'])
@login_required
def textCreate():
  print("Inside TExt Create")
  textData = Textfile.query.all()
  with open('training_data/training.txt', 'w') as fh:
    for line in textData:
      fh.write(line.text)
  return redirect(url_for('admin'))

这是我的文本.html

  <tbody>
          {% for row in files %}
          <tr>
              <td>{{ row.id }}</td>
              <td>  </td>
              <td>{{ row.text }}</td>
              <td><a href="edit_script/{{row.id}}" class="btn btn-default pull-right">Edit this Question</a></td>
              <td><a href="delete_question/{{row.id}}" class="btn btn-default btn-danger pull-right"> Delete this Question</a></td>
          </tr>
          {% endfor %}
      </tbody>

这是我在文本区域中输入的文本输入。

什么是冠状病毒? 冠状病毒是一大类病毒,已知可引起从普通感冒到更严重的疾病,如中东呼吸综合征(MERS)和严重急性呼吸综合征(SARS)。 什么是新型冠状病毒? 新型冠状病毒(CoV)是一种新的冠状病毒株,以前未在人类中鉴定。 人类会感染动物源的新型冠状病毒吗? 详细调查发现,2002年在中国,SARS冠状病毒从果子狸传播给人类,2012年在沙特阿拉伯,从单峰骆驼传播给人类。一些已知的冠状病毒正在尚未感染人类的动物体内传播。随着全世界监测水平的提高,可能会发现更多的冠状病毒

这是带有分隔行的输出。。。我指的是在每行之后创建的空格/空行。

什么是冠状病毒

冠状病毒是一大类病毒,已知可引起从普通感冒到更严重的疾病,如中东呼吸综合征(MERS)和严重急性呼吸综合征(SARS)

什么是新型冠状病毒?

新型冠状病毒(CoV)是一种新的冠状病毒株,以前未在人身上鉴定过。p> 人类是否会感染动物源的新型冠状病毒?

详细调查发现,2002年在中国,SARS冠状病毒从果子狸传播给人类,2012年在沙特阿拉伯,从单峰骆驼传播给人类。一些已知的冠状病毒正在尚未感染人类的动物体内传播。随着全世界监测水平的提高,可能会发现更多的冠状病毒

我不要这些空行。如何删除这些空行。


Tags: 文本txtidapp区域for人类td
2条回答

根据评论中的讨论,如果您执行以下操作,会发生什么情况——

fh.write(line.text.rstrip()+“\n”)

只是想你可能有比你需要更多的新词。移除它们,然后再添加一个

问题解决了。。。我想为可能面临这类问题的人提一提解决方案

起初我用炼金术作为数据库。。我正在将数据存储到一个Textfile表中。然后,通过从sqlalchemy导入,将数据库中的任何用户类型作为文本字段存储在Tectfile表中

from sqlalchemy import text

在上面的代码中,我从数据库中获取数据,并将这些文本存储到一个文本文件中。但是对于这个文本字段,它们不是字符串格式。。我将字符串解决方案应用于文本格式,它会自动在文本中生成一些空格…顺便说一句,我还尝试了str()方法将此文本转换为varchar数据类型…但什么都没有发生…所以我尝试通过简单地导入此文本将may模型从文本更改为字符串

import string

然后我将模型从文本转换为字符串。这是我的模型

class Textfile(db.Model):
  id = db.Column(db.Integer, primary_key=True)
  description = db.Column(db.String(400))
  data = db.Column(db.LargeBinary)
  text = db.Column(db.Text)
  string = db.Column(db.String(1000))
  question = db.Column(db.String(500))
  ans = db.Column(db.String(1000))

起初我使用文本,但后来我使用字符串将用户输入从文本区域存储到sql数据库中…在这样做之后,我稍微更改了代码,如下所示

fh.write(line.question + "\n" + line.ans + "\n")

我只是在我的代码中添加了这一行,然后wallah。。。。!!!问题解决了。。。已将文件保存到.txt文件中,不带任何空格。。。所以我认为这对任何面临同样问题的人都有帮助…干杯

相关问题 更多 >

    热门问题