• 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

Object Storage Arubacloud
0 głosów
5,440 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 455 wizyt
pytanie zadane 3 lutego 2019 w Python przez HelloWorld (: Początkujący (470 p.)
0 głosów
3 odpowiedzi 727 wizyt
pytanie zadane 11 listopada 2017 w C i C++ przez Eliro Stary wyjadacz (12,160 p.)
0 głosów
1 odpowiedź 513 wizyt
pytanie zadane 25 kwietnia 2017 w C i C++ przez jekjekjoker Nowicjusz (220 p.)

92,555 zapytań

141,404 odpowiedzi

319,559 komentarzy

61,940 pasjonatów

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.

Akademia Sekuraka

Kolejna edycja największej imprezy hakerskiej w Polsce, czyli Mega Sekurak Hacking Party odbędzie się już 20 maja 2024r. Z tej okazji mamy dla Was kod: pasjamshp - jeżeli wpiszecie go w koszyku, to wówczas otrzymacie 40% zniżki na bilet w wersji standard!

Więcej informacji na temat imprezy znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...