Pythonda sayılar

Merhaba değerli yazılımcılar , benim yapmak isediğim şey örneğin 34004 sayısındaki 00ları birer birer artırmak istiyorum bunu nasıl yapabilirim acaba örnek kod sunabilir misiniz ? Şimdiden teşekkür ederim.

sayı = 34004

def arttır(sayı, adet):
	s = str(sayı)
	a = s.count("0")
	if a >= 1:
		liste = s.split("0")
		for i in range(adet):
			liste.insert(1, "0")
		return "".join(liste)

for i in range(10):
	print(arttır(sayı, i))

Örnek olsun diye 10 adet yaptım. Kendinize göre düzenlersiniz. İyi calısmalar

Merhaba. Sıfırları arttırmaktan kastınız 34004 sayısını 340004 haline getirmek mi, yoksa 34004 sayısını 34114 gibi bir hale getirmek mi? Eğer ilk dediğim ise Halil Bey bunu yapmış.

Şahsen ilk dediğinizi anlamıştım ikinci aklıma bile gelmedi :slight_smile:

2 Beğeni

ikinci dediğini kasttetmiştim ama ben , üzgünüm tam açıklayamadığım için

Anladım. Yapmıştım örneği aslında sanırım forum taşınırken silinmiş

sayı = 34004

def arttır(sayı, adet):
	s = str(sayı)
	a = s.count("0")
	if a >= 1:
		for i in range(adet):
			liste = s.split("0"*a)
			liste.insert(1, str(i)*a)
			yield int("".join(liste))

#kullanım örneği
print(*arttır(sayı, 10))

Anlayamadığınız yer varsa anlatabilim. İyi forumlar

2 Beğeni

tamamdır tam istediğim sonucu veriyor yazdığınız bu program , teşekkürler iyi günler dilerim .:slight_smile:

print(list(arttır(34004001, 10)))

[340040010000, 340040011111, 340040012222, 340040013333, 340040014444, 340040015555, 340040016666, 340040017777, 340040018888, 340040019999]

1 Beğeni
sayı = 34004001

def arttır(sayı, adet):
	s = str(sayı)
	liste = []
	for i in range(adet):
		liste.append(s.replace("0", str(i)))
	return liste

print(arttır(sayı, 20))

Daha kısa ve güzel bi yol, bütün sıfırlar arttırılıcak

Gereksinim "00"lari artirmak degil miydi? :slight_smile:

Amaç hep güncellemek degil mi zaten bilgiyi, kodu… :slight_smile:

aslında asıl amaç sadece eşit iki sayıyı artırmaksayıda 4 tane sıfır varsa 2sini artacak diğerleri sabit duracak , hangisi olduğu rastgele seçilse iyi olur. yardımlarının için sağolunn