Python write () добавляет пробелы между строками - PullRequest
0 голосов
/ 09 июня 2019

Я пишу скрипт с Flask на Python 3. У меня есть сервер, который запрашивает ввод, который обычно будет состоять из нескольких строк. Затем я беру эти данные и записываю их в файл:

@app.route('/editor',methods = ['POST', 'GET'])
def result():
    if request.method == 'POST':
    result = request.form
    print(request)
    global file
    file = result['script']
    f = open(file, "r+")
    contents = f.read()
    f.close()

    return render_template("result.html",result = result, file = file, cont = contents)

В этом коде ^ я получаю имя файла из формы ввода, а затем использую шаблон Flask:

<!doctype html>
<html>
<title>File Editor</title>
   <body>
      Editor:
      <form action = "http://192.168.#.###:5000/save" method = "POST" id="form">
      <textarea name="script" form="form" rows="10" cols="100">{{cont}}</textarea>
      <p><input type = "submit" value = "Save" /></p>
   </form>
   </body>
</html>

Этот ^ перенаправляет на путь сохранения

@app.route('/save',methods = ['POST', 'GET'])
def save():
    contents = request.form
    contents = contents.items()
    ope = open(file, 'w+')
    i = ''
    for key, value in contents:
        i = value
    print(i)
    i.replace('\n', '')
    ope.write(i)
    ope.close()
    return redirect("/", code=302)

Но когда я открываю отредактированный файл, появляется больше строк, чем должно быть (между ними добавляется пустая строка). Если между двумя словами есть одна строка, это делает его 3, если есть 2 строки, это делает его 5, если нет строк, это делает его одним. Есть идеи почему?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...