Çözüldü Python input fonksiyonuna girilen değeri TXT dosyasına kaydetme

Bu konu çözüldü olarak işaretlenmiştir. Çözülmediğini düşünüyorsanız konuyu rapor edebilirsiniz.

docka.pro

Centipat
Katılım
28 Haziran 2022
Mesajlar
41
Çözümler
1
Daha fazla  
Cinsiyet
Erkek
Başlıkta görmüş olduğunuz gibi input fonksiyonuna girilen değeri TXT dosyasına nasıl kaydederim? Bunun için bir method ya da modül var mıdır?
 
Son düzenleyen: Moderatör:
Çözüm
Python:
import time.

print(" ")
print("KAYIT KONTROL")
print(" ")

bosluk = " "
kullanici_adi = input("adınız : ")
kullanici_soyadi = input("soyadınız : ")
kullanici_yasi = int(input("Yaşınız : "))
print(" ")
yas_siniri = 18.
if kullanici_yasi >= yas_siniri:
 print("Sayın "+kullanici_adi+bosluk+kullanici_soyadi+" kayıt olabilirsiniz.")
else:
 print("Sayın "+kullanici_adi+bosluk+kullanici_soyadi+" kayıt olamazsınız.")
 time.sleep(2)
 exit()

print(" ")
kayit_ad = input("adınız : ")
kayit_soyad = input("soyadınız : ")
kayit_mail = input("mailiniz : ")
kayit_sifre = input("şifreniz : ")
print(" ")
print("Kayıt işlemi gerçekleştiriliyor...")
print(" ")
time.sleep(3)
print("Kayıt başarılı. Hoşgeldiniz!")
time.sleep(5)

with open("kayitlar.txt") as dosya:
 dosya.write(kayit_ad)
 dosya.write(kayit_soyad)
 dosya.write(kayit_mail)
 dosya.write(kayit_sifre)

Hocam şu şekilde yaptım txt dosyası py dosyasıyla aynı dizin içinde ama değerler kaydolmuyor.
Bunu yaptığında ad.txt isimli text dosyasının içinde girilen veriyi göreceksin ve anladığım kadarıyla öğrenme aşamasındasın fakat sadece ezbere gidiyorsun mantığını anlaman gerekiyor.

kayit_ad = input("isim giriniz : "); <-- input ile veri alınır ve kayit_ad değişkenine atanır

with open("ad.txt","w") as f: <-- open ile dosya açılır ve yolu belirlenir Write edileceği "w" ile belirlenir ve bu işlem f değişkenine atanır
f.write(kayit_ad) <-- daha önceden aldığımız veri f.write ile yazdırılır

Son hali :

kayit_ad = input("isim giriniz : ");

with open("ad.txt","w") as f:
f.write(kayit_ad)

Fakat sizin yaptığınız bir kullanıcı veri girişi sistemi ve bunu sorgulama oluşturmak bu gibi bir programı fopen() elemanı ile yapmak mümkün değildir çünkü txt dosyaları programdan sadece bir veri alır yada karşılaştırmak mümkün olmaz yani çoklu işlem yapamazsınız bunun yerine database öğrenmeniz gerekiyor.
Bunu yaptığında ad.txt isimli text dosyasının içinde girilen veriyi göreceksin ve anladığım kadarıyla öğrenme aşamasındasın fakat sadece ezbere gidiyorsun mantığını anlaman gerekiyor.

Kayit_ad = input("isim giriniz: "); <-- input ile veri alınır ve kayit_ad değişkenine atanır.

With open("ad.txt","W") as F: <-- open ile dosya açılır ve yolu belirlenir write edileceği "W" ile belirlenir ve bu işlem F değişkenine atanır.
F. Write(kayit_ad) <-- daha önceden aldığımız veri F. Write ile yazdırılır.

Son hali:

Kayit_ad = input("isim giriniz: ");

With open("ad.txt","W") as F:
F. Write(kayit_ad)

Fakat sizin yaptığınız bir kullanıcı veri girişi sistemi ve bunu sorgulama oluşturmak bu gibi bir programı fopen() elemanı ile yapmak mümkün değildir çünkü txt dosyaları programdan sadece bir veri alır yada karşılaştırmak mümkün olmaz yani çoklu işlem yapamazsınız bunun yerine database öğrenmeniz gerekiyor.

Çözdüm hocam çok teşekkür ederim.

Python:
import time.

print(" ")
print("KAYIT KONTROL")
print(" ")

bosluk = " "
kullanici_adi = input("adınız : ")
kullanici_soyadi = input("soyadınız : ")
kullanici_yasi = int(input("Yaşınız : "))
print(" ")
yas_siniri = 18.
if kullanici_yasi >= yas_siniri:
 print("Sayın "+kullanici_adi+bosluk+kullanici_soyadi+" kayıt olabilirsiniz.")
else:
 print("Sayın "+kullanici_adi+bosluk+kullanici_soyadi+" kayıt olamazsınız.")
 time.sleep(2)
 exit()

print(" ")
kayit_ad = input("adınız : ")
kayit_soyad = input("soyadınız : ")
kayit_mail = input("mailiniz : ")
kayit_sifre = input("şifreniz : ")
with open("ad.txt","w") as f:
 f.write(kayit_ad+bosluk+kayit_soyad+bosluk+kayit_mail+bosluk+kayit_sifre)
print(" ")
print("Kayıt işlemi gerçekleştiriliyor...")
print(" ")
time.sleep(3)
print("Kayıt başarılı. Hoşgeldiniz!")
time.sleep(5)

Hocam en son şu şekilde yaptım ve çalışıyor yardımlarınız için hepinize teşekkür ederim sayenizde yeni bir şey öğrendim.

Python:
import time.

print(" ")
print("KAYIT KONTROL")
print(" ")

bosluk = " "
kullanici_adi = input("adınız : ")
kullanici_soyadi = input("soyadınız : ")
kullanici_yasi = int(input("Yaşınız : "))
print(" ")
yas_siniri = 18.
if kullanici_yasi >= yas_siniri:
 print("Sayın "+kullanici_adi+bosluk+kullanici_soyadi+" kayıt olabilirsiniz.")
else:
 print("Sayın "+kullanici_adi+bosluk+kullanici_soyadi+" kayıt olamazsınız.")
 time.sleep(2)
 exit()

print(" ")
kayit_ad = input("adınız : ")
kayit_soyad = input("soyadınız : ")
kayit_mail = input("mailiniz : ")
kayit_sifre = input("şifreniz : ")
with open(kullanici_adi + ".txt","w") as f:
 f.write(kayit_ad+bosluk+kayit_soyad+bosluk+kayit_mail+bosluk+kayit_sifre)
print(" ")
print("Kayıt işlemi gerçekleştiriliyor...")
print(" ")
time.sleep(3)
print("Kayıt başarılı. Hoşgeldiniz!")
time.sleep(5)

Program çalıştırıldığı andan itibaren ad.txt dosyasına yapılan kayıtları silip yeni kayit değerleriyle değiştiriyordu bu şekilde çözdüm.

Python:
with open(kullanici_adi + ".txt","w") as f:

 f.write(kayit_ad+bosluk+kayit_soyad+bosluk+kayit_mail+bosluk+kayit_sifre)

Artık her kullanici için yeni bir txt dosyası oluşturuyor ve kayit degişkenlerine girilen değerleri bu dosyanın içerisine kaydediyor.
 
Son düzenleme:

Yeni konular

Geri
Yukarı