• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

question-closed Tworzenie pliku txt w python

Aruba Cloud VPS - 50% taniej przez 3 miesiące!
0 głosów
5,940 wizyt
pytanie zadane 27 listopada 2020 w Python przez xBatchowy Początkujący (320 p.)
zamknięte 27 listopada 2020 przez xBatchowy
from time import sleep

filename = input ('File name: ')
print(filename)
sleep(2)
text = input('Write something: ')
print(text)

Cześć, chciałbym napisać notatnik w Pythonie (Python 3.9, programuje w Visual Studio Code) Chciałbym dodać kod, dzięki któremu po wpisaniu czegoś w filename = input ('File name: ') tworzył się plik txt o nazwie którą się wpisało, a w text = input('Write something: ') zapisało się w środku tego pliku. W Pythonie jestem nowy

Pozdrawiam

komentarz zamknięcia: Pytanie zamykam, wielkie dzięki za chęć pomocy, w przyszłości te wiedze wykorzystam, a ten notatnik zacznę pisać w batchu

1 odpowiedź

+2 głosów
odpowiedź 27 listopada 2020 przez puki1212 Obywatel (1,360 p.)
wybrane 28 listopada 2020 przez xBatchowy
 
Najlepsza
from time import sleep

filename = str(input('File name: '))
print(filename)
sleep(2)
text = str(input('Write something: '))
print(text)
with open(filename, 'w') as f:
    f.write(f"{text}")
f.close()

Można użyć menadżera kontekstu, użyłem f czyli format string przez co w nawiasach {} przekazuję zmieną text. Dodatkowo zamykam uchwyt, dobra praktyka. Jeśli potrzebujesz dokładniejszego wytłumaczenia to napisz.

komentarz 27 listopada 2020 przez xBatchowy Początkujący (320 p.)
Niestety nie rozumiem większości tego kodu, z Pythona umiem tylko sleep-y, print-y, zmienne, else lub pętle, jak otworzyłem ten kod to nie stworzyło mi żadnego pliku
komentarz 27 listopada 2020 przez puki1212 Obywatel (1,360 p.)

Kod pisałem w Python 3.8

Zaczynając od początku

filename = input ('File name: ')

Zamieniłem na

filename = str(input('File name: '))

Wykonałem "zrzutowanie" typu, czyli oznajmiłem interpreterowi Pythona że zmienna będzie typu str -> string -> łańcuch znaków np 'test'.

Analogicznie zrobiłem z zmienną text. Później używam 'menadżera kontekstu', zaczyna się od słowa kluczowego with, istotne dla ciebie jest to że otwieramy plik za pomocą komendy open() i  otwieramy go w trybie 'w' czyli write, dzięki czemu będziemy mogli dopisać coś do pliku, dodatkowo używamy słowa as które jest wbudowane w język Python i całe nasze wyrażenie 

with open(filename, 'w') as f

  jest postrzegane jako litera f, przez co możemy się do niego odwołać po przez właśnie tą literę, mogło by to być np słowo file i wtedy wyglądało by to tak:

with open(filename, 'w') as file:

    file.write('Write somthing')

 

Pisałem wcześniej  f -> format string:

f.write(f"{text}")

Przez co mogę zamieścić zawartość zmiennej pomiędzy {} nawiasami i funkcja write() wpisze to do wskazanego pliku tekstowego.

 

Ten kod sam nie utworzy ci pliku, przekazujesz do zmiennej filename miejsce gdzie chcesz aby plik był zapisany. Jeśli chcesz żeby z miejsca plik był zawsze zapisany w tym samym miejscu musisz zapisać to w zmienej:

filename = r'C:\Users\nazwa_użytkownika\Desktop\nazwapliku.txt'

 

komentarz 27 listopada 2020 przez xBatchowy Początkujący (320 p.)
Fajnie, że chcesz pomóc, ale nadal tego nie rozumiem, chciałbym po prostu, żeby po wpisaniu inputu filename stworzyło plik tekstowy o wpisanej nazwie, po sleep(2) jak widać jest opcja inputu text, jak się w to cokolwiek wpisze to powinno ten tekst wrzucić do pliku txt.

Przynajmniej tak chciałbym aby to działało
komentarz 10 lutego 2021 przez Mio_pl Nowicjusz (100 p.)

Możesz utworzyć plik funkcją open

open('nazwa_pliku', mode='w+').close()

w - write [jeśli nie istnieje utwórz]

w+ - write + read [jeśli nie istnieje utwórz]

close - zamknij

 

Podobne pytania

0 głosów
2 odpowiedzi 609 wizyt
pytanie zadane 3 lutego 2019 w Python przez HelloWorld (: Początkujący (470 p.)
0 głosów
3 odpowiedzi 954 wizyt
pytanie zadane 11 listopada 2017 w C i C++ przez Eliro Stary wyjadacz (12,160 p.)
0 głosów
1 odpowiedź 828 wizyt
pytanie zadane 25 kwietnia 2017 w C i C++ przez jekjekjoker Nowicjusz (220 p.)

93,172 zapytań

142,184 odpowiedzi

321,965 komentarzy

62,496 pasjonatów

Advent of Code 2024

Top 15 użytkowników

  1. 918p. - dia-Chann
  2. 902p. - Łukasz Piwowar
  3. 901p. - CC PL
  4. 894p. - Łukasz Eckert
  5. 872p. - Michal Drewniak
  6. 867p. - Marcin Putra
  7. 858p. - rafalszastok
  8. 856p. - rucin93
  9. 842p. - Dawid128
  10. 840p. - Adrian Wieprzkowicz
  11. 830p. - Piotr Aleksandrowicz
  12. 826p. - Michał Telesz
  13. 819p. - Mariusz Fornal
  14. 814p. - Mikbac
  15. 812p. - TheLukaszNs
Szczegóły i pełne wyniki

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj

Wprowadzenie do ITsec, tom 1 Wprowadzenie do ITsec, tom 2

Można już zamawiać dwa tomy książek o ITsec pt. "Wprowadzenie do bezpieczeństwa IT" - mamy dla Was kod: pasja (użyjcie go w koszyku), dzięki któremu uzyskamy aż 15% zniżki! Dziękujemy ekipie Sekuraka za fajny rabat dla naszej Społeczności!

...