Herkesin günü güzel geçiyordur umarım
Python 2x sürümü ile çalıştırıldığında uyarı verecek bir şeyin nasıl yapıldığını öğrenmeye çalışıyorum
# -*- coding: utf-8 -*-
import sys
py2metni = """
Python'ın 2.x sürümlerinde düzgün çalışmamaktadır
Çalıştırabilmek için 3.x sürümünü kurun"""
py3metni = "OK"
if sys.version_info.major < 3:
print(py2metni)
else:
print(py3metni)
Programı böyle yazdığımda herhangi bir sorun çıkmıyor ama if e and ile bir şey eklediğimde 2 programda da OK çıktısını veriyor
Normal şekli:
if sys.version_info.major < 3:
Değiştirilmiş Hali:
if sys.version_info.major == 3 and sys.version_info.minor == 2:
sizce nerede hata yapıyor olabilirim ?
Bu komut python'ın sürüm numarısını verir(2 veya 3)sys.version_info.major
Bu ise alt sürüm numarasını verir (yani 3.5 de 5, 2.7 de 7 gibi)sys.version_info.minor
Sizin değiştirdiğiniz kod sürümün 3.2 olup olmadığını kontrol ediyor. Yani and ile alakası yok. Konuyu daha iyi anlamak için matematikteki mantık konusuna bakabilirsiniz.
Alıntı yapılan: cosmicowl - 29 Eylül 2018 - 19:35:00
Bu komut python'ın sürüm numarısını verir(2 veya 3)sys.version_info.major
Bu ise alt sürüm numarasını verir (yani 3.5 de 5, 2.7 de 7 gibi)sys.version_info.minor
Sizin değiştirdiğiniz kod sürümün 3.2 olup olmadığını kontrol ediyor. Yani and ile alakası yok.
Anladım ama kodun tamamı şöyle
# -*- coding: utf-8 -*-
import sys
py2metni = """
Python'ın 2.x sürümlerinden birini kullanıyorsunuz.
Programı çalıştırabilmek için sisteminizde Python'ın
3.x sürümlerinden biri kurulu olmalı."""
py3metni = "OK"
if sys.version_info.major == 3 and sys.version_info.minor == 2:
print(py2metni)
else:
print(py3metni)
burda bana 3.2 den başka bir sürüm ile açtığımda uyarı vermesi gerekmiyor mu ?
Not:Kafa karışıklığı olmasın diye ayrı yazayım dedim belirtmediğim için üzgünüm
Py2metni ni py3 ile değiştirmen lazım. Sürüm 3.2 olunca uyarı veriyor aksi olursa OK yazıyor.
Gözümden kaçmış teşekkürler ;D