Çözüldü Python'da değişkene değişebilen bir değer atamak

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

TRMKTR

Decapat
Katılım
30 Temmuz 2022
Mesajlar
315
Yer
Dünya
Python'la ufak bir uygulama yaptım ama kafama bir soru takıldı:
Ad =...
Dedim ve bir isim yazdım, bu değişkenin değerini herhangi bir şey yazmadan nasıl değiştirebilirim? Mesela bir metin dosyası oluşturdum ve sırasıyla 3 tane isim girdim. Ve değişkenin sırasıyla bu isimleri almasını istiyorum. Örnek olarak uygulamayı 1. kez çalıştırdım talha yazdı, 2. kez çalıştırdım Mehmet yazdı, 3. kez çalıştırdığımda farklı bir isim yazdı. Bunun bir yolu var mıdır? Olduğunu pek sanmıyorum ama sormak istedim.
 
Çözüm
Evet, tam olarak böyle bir şey diyebilirim ama bu liste iyice uzarsa bunu daha kısa bir şekilde yazmanın yolu var mıdır?
Liste uzun olacaksa isterseniz bir metin dosyasının içine isimleri yazarsınız. Daha sonra isimleri bu dosyadan alırsınız.

Mesela görseldeki gibi içinde isimlerin olduğu bir metin dosyamız olsun:



Aşağıdaki kodla bu dosyadan rastgele isim çekebilirsiniz:
Python:
import random
#Dosya.txt yazan yere kendi dosyanızın adı gelecek
with open("dosya.txt") as f:
    dosyaicerigi = f.readlines()
    print(random.choice(dosyaicerigi))
Python:
ad = ["Ahmet", "Mehmet", "Ayşe"]

for isimler in ad:
    print(isimler)

Şeklinde bir şey mi istiyorsunuz?
 

Öyle bir şey yok galiba hocam.
 
Python:
ad = ["Ahmet", "Mehmet", "Ayşe"]

for isimler in ad:
    print(isimler)

Şeklinde bir şey mi istiyorsunuz?
Ben daha çok şu şekilde anladım hocam:

Python:
import random

isimlistesi = ["Ahmet", "Ayşe", "Selin"]

rastgeleisim = random.choice(isimlistesi)

print(rastgeleisim)
 
Evet, tam olarak böyle bir şey diyebilirim ama bu liste iyice uzarsa bunu daha kısa bir şekilde yazmanın yolu var mıdır?
Her program çalıştığında bir çıktı almak istiyorsanız @siriius'un dediği gibi yapın.
 
@The Shorekeeper ve @siriius gayet iyi bir şekilde açıklamış.

Evet, tam olarak böyle bir şey diyebilirim ama bu liste iyice uzarsa bunu daha kısa bir şekilde yazmanın yolu var mıdır?

En başta belirttiğin gibi isimleri ayrı bir dosyada tutabilir ve bu dosyadan çekebilirsin:

Python:
from random import choice

with open("DosyaYolu") as f:
 isimler = [isim.strip() for isim in f.readlines()]

print(choice(isimler))
 
Evet, tam olarak böyle bir şey diyebilirim ama bu liste iyice uzarsa bunu daha kısa bir şekilde yazmanın yolu var mıdır?
Liste uzun olacaksa isterseniz bir metin dosyasının içine isimleri yazarsınız. Daha sonra isimleri bu dosyadan alırsınız.

Mesela görseldeki gibi içinde isimlerin olduğu bir metin dosyamız olsun:



Aşağıdaki kodla bu dosyadan rastgele isim çekebilirsiniz:
Python:
import random
#Dosya.txt yazan yere kendi dosyanızın adı gelecek
with open("dosya.txt") as f:
    dosyaicerigi = f.readlines()
    print(random.choice(dosyaicerigi))
 
Çözüm
Peki hocam rastgele değilde sırasıyla çekmek istersem, bir şey yapmama gerek yok mu?
 
Bu siteyi kullanmak için çerezler gereklidir. Siteyi kullanmaya devam etmek için çerezleri kabul etmelisiniz. Daha Fazlasını Öğren.…