Python ıdle'de programımın listeden rastgele bir sayı seçip onu dosyaya yazmasını nasıl sağlarım?
Ya da kullanıcıdan aldığım veriyi dosyaya yazarken başına sırayla her seferinde farklı bir sayı yazmasını nasıl sağlarım? Şimdiden teşekkürler.
Hızlıca bir kod yazmaya çalıştım. Random modülünü importladım en başta. "a" adında boş bir liste oluşturarak rastgele oluşturulan sayıları bu listenin içerisine ekledim ki eğer ki daha önce aynı sayı oluşturulduysa bir daha gelmesin diye. "random_sayi" adında fonksiyon oluşturarak içerisinde rastgele bir sayı elde eden değer oluşturdum. İncelediğiniz zaman çok daha iyi anlayacaksınız. def random_sayi():'dan itibaren içeriye alınız tüm kodları görselde gösterildiği gibi
import random
a = []
def random_sayi():
random_number = random.randint(1, 5)
if random_number in a:
return random_sayi()
if random_number not in a:
a.append(random_number)
random_sayi()
Her seferinde farklı sayı yazmasını sağlamak derken, örneğin, kullanıcının bir önce ki input'undaki değeri ile sonradan girdiği değerin farklı olmasını mı istiyorsun?
Hayır.Şimdi programın kullanıcıdan aldığı bilgileri dosyaya yazarken başına bir tane rastgele bir sayı yazmasını istiyorum.Ama o sayılar her seferinde farklı olmalı
import random
d = open(r"C:\Users\Ornek\Desktop\log.txt","a")
e_posta = input()
sifre= input()
randomsayi=random.randint(1,100)
print(randomsayi,e_posta,file=d)
print(randomsayi,sifre,file=d)
d.close()
1 ile 100 arasında rastgele sayı oluşturuyor fakat oluşturulan sayılar eşsiz değil. Önceden yazılmış olan bilgilerin üstüne yazmıyor, yalnızca ekleme yapıyor.
Hızlıca bir kod yazmaya çalıştım. Random modülünü importladım en başta. "a" adında boş bir liste oluşturarak rastgele oluşturulan sayıları bu listenin içerisine ekledim ki eğer ki daha önce aynı sayı oluşturulduysa bir daha gelmesin diye. "random_sayi" adında fonksiyon oluşturarak içerisinde rastgele bir sayı elde eden değer oluşturdum. İncelediğiniz zaman çok daha iyi anlayacaksınız. def random_sayi():'dan itibaren içeriye alınız tüm kodları görselde gösterildiği gibi
import random
a = []
def random_sayi():
random_number = random.randint(1, 5)
if random_number in a:
return random_sayi()
if random_number not in a:
a.append(random_number)
random_sayi()
Hızlıca bir kod yazmaya çalıştım. Random modülünü importladım en başta. "a" adında boş bir liste oluşturarak rastgele oluşturulan sayıları bu listenin içerisine ekledim ki eğer ki daha önce aynı sayı oluşturulduysa bir daha gelmesin diye. "random_sayi" adında fonksiyon oluşturarak içerisinde rastgele bir sayı elde eden değer oluşturdum. İncelediğiniz zaman çok daha iyi anlayacaksınız. def random_sayi():'dan itibaren içeriye alınız tüm kodları görselde gösterildiği gibi Eki Görüntüle 575627
import random
a = []
def random_sayi():
random_number = random.randint(1, 5)
if random_number in a:
return random_sayi()
if random_number not in a:
a.append(random_number)
random_sayi()
Üzerinde ufak bir değişiklik yaparak doğru sonuca ulaşabilirsiniz. Ayak üstü yazmıştım. Zaten bu kod yalnızca bir defa çalışıyor. Eğer ki while döngüsüne alırsanız sürekli çalıştırıp, bu sayede tekrardan kurtulursunuz. Fonksiyon bir kere çalıştıktan sonra durunca "a" listesi sıfırlanıyor. Bunun önüne geçmek için dediğim gibi while döngüsüne alın.