Hesap makinasında ard arda gelen işlemler bir character set olarak işlemChar=“4×5/2+10” gibi sonucu
İşlemNum=4×5/2+10 gibi sonuca çevirmek.
Sorunu chat gpt ye sordum eval(x) ile çözdüm. Teşekkürler
Hesap makinasında ard arda gelen işlemler bir character set olarak işlemChar=“4×5/2+10” gibi sonucu
İşlemNum=4×5/2+10 gibi sonuca çevirmek.
Sorunu chat gpt ye sordum eval(x) ile çözdüm. Teşekkürler
chatgpt ye “python projesi yaparken eval() fonksiyonunu kullanmak tehlikeli midir?” sorusunu sorup biraz üzerine konuşmanız iyi olabilir.
Evet tehlikeli olduğunu söylüyor ve yerine ast.literal.eval önerisinde bulundu. Peki aldığım bir karakter dizisi içindeki matematiksel işlemi nasıl yaparım.
Sonuc=“4*8+15/2” işlemini yapmak için kısa yol nedir ?
ChatGPT aşağıdaki şekilde açıklama yapmış olmalı.
eval()
fonksiyonu güçlüdür ancak dışardan gelen verilere uygulanırken dikkatli kullanılmalıdır, çünkü kötü niyetli kod çalıştırabilir.sympy
veya asteval
) kullanabilirsiniz. Bu yöntem güvenlik risklerini azaltır. Örneğin:from sympy import sympify
islem = "4*8+15/2"
sonuc = sympify(islem)
print(sonuc)
Halil hocam teşekkür ederim. Eval yerine sympify işlemi yaptı. Çok sağolun.