Загрузка...

Проблема с записью в файл

Тема в разделе Python создана пользователем MULTIPOTENTIAL 3 окт 2020. 115 просмотров

  1. MULTIPOTENTIAL
    MULTIPOTENTIAL Автор темы 3 окт 2020 Заблокирован(а) 944 13 ноя 2018
    Задача программы, превратить [1:2] в [2:1]

    Входные данные: [IMG]

    Ожидаемые выходные данные:[IMG]



    ЧТо мы получаем на самом деле: [IMG]


    Вот код:
    Код
    def changePlaces():

    FileWithBase = input("Для работы программы укажите файл с базой ---> ")


    base = open( FileWithBase + '.txt', 'r', encoding = "UTF-8")

    ReadLine = base.readline() # Чтение базы построчно

    LineAcc = ReadLine.rsplit(":", 1) # разделение на две части

    FirstVar = LineAcc[0]
    SecVar = LineAcc[1]

    base.close()

    NewBase = open("NewBase.txt", "a+", encoding = "UTF-8")

    NewBase.write(SecVar + ":" + FirstVar + "\n") # Запись в файл

    NewBase.close()

    pass


    do = input("Привет! \nДля работы программы выбери какая функция тебе нужна:\n1. [1:2] --> [2:1]\n2. mail:pass --> login:pass\nВыберите функцию: ")

    if (do == "1"):
    changePlaces()
    else:
    print("Недоступно на данный момент!")
    pass
     
  2. Decoy4298
    Decoy4298 3 окт 2020 217 18 фев 2020
    В конце строки строит символ новой строки, поэтому он вместе с паролем и переносится в начало текста, стрипни ReadLine через .strip() и всё.
     
  3. dedonosec
    dedonosec 3 окт 2020 16 29 дек 2018
    ReadLine = base.read().split('\n')
    --- Сообщение объединено с предыдущим 3 окт 2020
    потом уже делай для каждого разделение на две части, при переборе списка с акками
     
  4. Decoy4298
    Decoy4298 3 окт 2020 217 18 фев 2020
    Отрефакторил немножко и исправил косяк
    Python
    def changePlaces():
    basefile = input("Для работы программы укажите файл с базой ---> ")
    if not basefile.endswith('.txt'):
    basefile += '.txt'

    data = []

    with open(basefile, 'r', encoding='utf-8') as base:
    for line in base.readlines():
    login, password = line.strip().split(':', 1)
    data.append(f'{password}:{login}\n')

    with open(basefile.split('.')[0] + " (new).txt", "w", encoding='utf-8') as newbase:
    newbase.writelines(data)


    def main():
    action = input("Привет! \nДля работы программы выбери какая функция тебе нужна:\n1. [1:2] --> [2:1]\n2. mail:pass --> login:pass\nВыберите функцию: ")
    if action == "1":
    changePlaces()
    else:
    print("Недоступно на данный момент!")


    if __name__ == '__main__':
    main()
     
  5. dedonosec
    dedonosec 3 окт 2020 16 29 дек 2018
    Код
    accounts = []
    with open('accs.txt', 'r', encoding="utf-8") as file:
    for i in file.read().split('\n'):
    accounts.append(i)
    for acc in accounts:
    login = acc.split(':')[0]
    password = acc.split(':')[1]
    print(login, password)
     
  6. MULTIPOTENTIAL
    MULTIPOTENTIAL Автор темы 3 окт 2020 Заблокирован(а) 944 13 ноя 2018
    Спасибо за Ответы!
     
Top
Загрузка...