Python "list object has no attribute join" hatası

incarr

Femtopat
Katılım
21 Mart 2024
Mesajlar
24
Daha fazla  
Cinsiyet
Erkek
1711028433634.png


Şifre oluşturucu yapmak istiyorum ama ekteki gibi bir hata alıyorum. Bilen birisi yardımcı olabilir mi?
 
Eki Görüntüle 2146553

Şifre oluşturucu yapmak istiyorum ama ekteki gibi bir hata alıyorum. Bilen birisi yardımcı olabilir mi?
Python:
import random

lower = list("qwertyuopasdfghjklizxcvbnm")
upper = list("QWERTYUIOPASDFGHJKLZXCVBNM")
number = list("0123456789")
mark = list("_-")
total = lower + upper + number + mark

password = random.choices(total, k=8)
print(password)

password_str = ''.join(password)
print(password_str)


Liste oluştururken () yerine [] kullanmalısınız. Join fonksiyonunda syntax hatanız vardı onu düzelttim. Choices fonksiyonunu çağırırken, her bir karakter kümesinin bir liste olması gerekir. Ancak bu karakter kümelerini string olarak tanımlamışız. Bunun yerine, karakter kümelerini liste olarak tanımlamamız gerekiyor.
 
List fonksiyonları arasında .join diye bir fonksiyon yok işte. Stringden yapman lazım onu.

Örnek;
Python:
"".join(password)

Python:
"""
Technopat.net Sosyal, .join için password generator örneği
"""
import random

def generate_password(length: int) -> str:
    """
        Güvenli olmayan random librarysi kullanarak şifre üretimi
    """
    total = "abcdefghjklsiuozxcvbnmwqert"
    total += total.upper() + "0123456789" + "_*.?!"
    password = random.choices(total, k=length)
    return "".join(password)

if __name__ == "__main__":
    RESULT = generate_password(int(input("Give length of the password: ")))
    print(RESULT)
 
Python:
import random

lower = list("qwertyuopasdfghjklizxcvbnm")
upper = list("QWERTYUIOPASDFGHJKLZXCVBNM")
number = list("0123456789")
mark = list("_-")
total = lower + upper + number + mark

password = random.choices(total, k=8)
print(password)

password_str = ''.join(password)
print(password_str)


Liste oluştururken () yerine [] kullanmalısınız. Join fonksiyonunda syntax hatanız vardı onu düzelttim. Choices fonksiyonunu çağırırken, her bir karakter kümesinin bir liste olması gerekir. Ancak bu karakter kümelerini string olarak tanımlamışız. Bunun yerine, karakter kümelerini liste olarak tanımlamamız gerekiyor.
teşekkür ederim

List fonksiyonları arasında .join diye bir fonksiyon yok işte. Stringden yapman lazım onu.

Örnek;
Python:
"".join(password)

Python:
"""
Technopat.net Sosyal, .join için password generator örneği
"""
import random

def generate_password(length: int) -> str:
    """
        Güvenli olmayan random librarysi kullanarak şifre üretimi
    """
    total = "abcdefghjklsiuozxcvbnmwqert"
    total += total.upper() + "0123456789" + "_*.?!"
    password = random.choices(total, k=length)
    return "".join(password)

if __name__ == "__main__":
    RESULT = generate_password(int(input("Give length of the password: ")))
    print(RESULT)
teşekkür ederim
 

Geri
Yukarı