Merhabalar,
.txt dosyamızın içerisinde mail adresleri var ve biz sadece sonu @gmail.com ile bitenleri getirmek istiyoruz. Bunun için nasıl bir yol izlenmeli?
mail adreslerini bu şekilde bir listede topladım ama bunların içinden sadece sonu @gmail.com veya @hotmail.com ile bitenleri nasıl süzgeçten geçirebilirim?
Aslında bu da patlayabilir
Patlamaması için biraz daha kurcalamak ve if blokları yerleştirmek gerekiyor.
Bana kalırsa split("@") de bir seçenek olabilir. split ettikten sonra açığa çıkan eleman sayısının 2 olup olmadığı, 2. elemanın gmail.com'a eşit olup olmadığı kontrol edilebilir.
for mail in mailler:
elemanlar = mail.split("@")
if len(elemanlar) == 2 and elemanlar[1] == "gmail.com":
print("Kestane Balının Diyarı Zonguldak'tan Tüm Dünya'ya Selamlar.")
mail = open("text.txt","r",encoding="utf-8").readlines()
mailler = []
# text dosyasındaki maillerin sonunda \n olduğu için .endswith düzgün çalışmıyordu
# o yüzden \n leri silip yeni bir listenin içine attım(varolan listedeki \n leri silmeyi bilmiyorum :) )
for dongu in range(len(mail)):
mailler.append(mail[dongu].strip('\n'))
# burda \n leri silip yeni listeye aktardım
while True:
mailbul = input("Aranacak mail adresini girin:\n")
for x in mailler:
if x.endswith(mailbul):
print(x)
sonuç olarak elinize sağlık .endswith tam olarak aradığım şeydi