Python kod yeniden nasıl başlatılır?

Call Of Death

Hectopat
Katılım
4 Ekim 2020
Mesajlar
174
Çözümler
1
Daha fazla  
Cinsiyet
Erkek
Son soruda evet dendikten sonra kendini tekrarlamasını istiyorum nasıl yapabilirim?

Kod:
print("Videonuzun like sayısını yazınız")

like = int(input())



print("Videonuzun dislike sayısını yazınız")

dislike = int(input())



rating = like / (like+dislike)

rating_yuzde = rating*100



print ("bu videonun beğeni oranı: %", rating_yuzde)



if (rating_yuzde < 50):

    print ("bu video beğenilmedi")

elif(rating_yuzde > 50):

    print ("bu video beğeniliyor")

elif (rating_yuzde == 50):

    print("bu video nötr")

elif (rating_yuzde > 75):

    print("bu video genel olarak beğenildi")



print("tekrar denemek istermisiniz?")

while True:

    input()

    break
 
O sona koyduğunuz while döngüsünü en başa koyun. En sona da şunu ekleyin:
Python:
if (input().lower() != "evet"):
    break
 
Eğer konsol gibi bir yerde çalışıyorsanız. Bütün kodları yeniden başlatmak için dosyayı yeniden başlatmak en temiz yöntemdir. Bunun için önce impotları atmalı;
Python:
import sys
import subprocess
import os
Sonrasında yeniden başlatmak istediğimiz durumda şu satırı eklemeliyiz.
Python:
subprocess.call([sys.executable, os.path.realpath(__file__)] + sys.argv[1:])
 
Eğer konsol gibi bir yerde çalışıyorsanız. Bütün kodları yeniden başlatmak için dosyayı yeniden başlatmak en temiz yöntemdir. Bunun için önce impotları atmalı;
Python:
import sys.
import subprocess.
import os
Sonrasında yeniden başlatmak istediğimiz durumda şu satırı eklemeliyiz.
Python:
subprocess.call([sys.executable, os.path.realpath(__file__)] + sys.argv[1:])

Yazılıma yeni başladığım için yazdıklarınızdan hiçbir şey anlamadım rica etsem daha basit bir şekilde anlatabilir misiniz yazdıklarınızın da nasıl yazdığınızı anlatırsanız çok bilgilendirici ve benim için çok iyi olur.

O sona koyduğunuz while döngüsünü en başa koyun. En sona da şunu ekleyin:
Python:
if (input().lower() != "evet"):
 break

Rica etsem yazdığınız kodun nasıl çalıştığını anlatır mısınız :)
 
Yazılıma yeni başladığım için yazdıklarınızdan hiçbir şey anlamadım rica etsem daha basit bir şekilde anlatabilir misiniz yazdıklarınızın da nasıl yazdığınızı anlatırsanız çok bilgilendirici ve benim için çok iyi olur.

Merhaba. Üsttekiler inputlarımız zaten bu kütüphaneleri teker teker inceleyebilirsiniz ama yine de anlatayım. sys kütüphanesi zaten adından da anlaşılacağı gibi sistem bileşenlerine erişmemizi sağlar. os kütüphanesi yine sys kütüphanesi gibi çalışır ve sistem'e erişimimizi sağlar. subprocess kütüphanesi ise genellikle komut satırında yapılan işlemleri python üzerinde yapmayı sağlar.

Burada subprocess.call() ile komut istemi üzerinden işlem yapıyormuş gibi işlemi başlatırız.

Normale Python yani .py uzantılı dosyaları, Python yorumlayıcımızın yolunu yazarak sonrasında ise dosyamızın yolunu yazarak çalıştırabiliriz. O zaman bizim bunu python içerisinde de yapmamız gerekiyor. sys.executable mevcut yorumlayıcının yolunu döndürür.

Yorumlayıcının ardından dosyamızın yolunu almamız gerekiyor. Bunun için de os.path.realpath(__file__) kullanmalıyız. Buradaki önemli olan __file__'dir. Normale bu argüman da dosyanın yolunu getirir fakat bunu komut istemi anlayamaz. os.path.realpath() ise bizim için bunu sistem içerisinden bulur ve komut isteminin anlayacağı biçime getirir.

Burada + sys.argv[1:] tamamen opsiyonel bir eklemedir. Tam olarak bilmediğim için çok derin giremeyeceğim. sys.argv[0] çalışılan dosyanın adını döndürür. sys.argv[1:] ise 1 ve sonrasını al demektir. Array listelerde bunu çokça kullanırız. 1 ve sonrasında yine argümanlar bulunabiliyor fakat tam olarak ne işe yaradıklarını bilmediğim için yardımcı olamayacağım.

Python yeni öğreniyorsanız ilk başlarda bunu öğrenmeniz pek mantıklı değil aslında. Öncelikli olarak temelleri öğrenmeniz sizin için daha iyi olur. Sonrasında birkaç basit kütüphane kullanımı öğreniminin ardından tekrar buraya gelip bakarsınız. Şimdilik sadece kopyala yapıştır en iyisi :)
 
Merhaba. Üsttekiler inputlarımız zaten bu kütüphaneleri teker teker inceleyebilirsiniz ama yine de anlatayım. sys kütüphanesi zaten adından da anlaşılacağı gibi sistem bileşenlerine erişmemizi sağlar. os kütüphanesi yine SYS kütüphanesi gibi çalışır ve Sistem'e erişimimizi sağlar. subprocess kütüphanesi ise genellikle komut satırında yapılan işlemleri Python üzerinde yapmayı sağlar.

Burada subprocess.call() ile komut istemi üzerinden işlem yapıyormuş gibi işlemi başlatırız.

Normale Python yani .py uzantılı dosyaları, Python yorumlayıcımızın yolunu yazarak sonrasında ise dosyamızın yolunu yazarak çalıştırabiliriz. O zaman bizim bunu Python içerisinde de yapmamız gerekiyor. sys.executable mevcut yorumlayıcının yolunu döndürür.

Yorumlayıcının ardından dosyamızın yolunu almamız gerekiyor. Bunun için de os.path.realpath(__file__) kullanmalıyız. Buradaki önemli olan __file__'dir. Normale bu argüman da dosyanın yolunu getirir fakat bunu komut istemi anlayamaz. os.path.realpath() ise bizim için bunu sistem içerisinden bulur ve komut isteminin anlayacağı biçime getirir.

Burada + sys.argv[1:] tamamen opsiyonel bir eklemedir. Tam olarak bilmediğim için çok derin giremeyeceğim. sys.argv[0] çalışılan dosyanın adını döndürür. sys.argv[1:] ise 1 ve sonrasını al demektir. Array listelerde bunu çokça kullanırız. 1 ve sonrasında yine argümanlar bulunabiliyor fakat tam olarak ne işe yaradıklarını bilmediğim için yardımcı olamayacağım.

Python yeni öğreniyorsanız ilk başlarda bunu öğrenmeniz pek mantıklı değil aslında. Öncelikli olarak temelleri öğrenmeniz sizin için daha iyi olur. Sonrasında birkaç basit kütüphane kullanımı öğreniminin ardından tekrar buraya gelip bakarsınız. Şimdilik sadece kopyala yapıştır en iyisi :)

Cevabın için teşekkür ederim kopyala yapıştırdan bahsettiniz nereden bulabilirim kopyalayacak kodları GitHub diye bir yer hakkında yazılar okudum orası güvenilir midir ayrıca sormak istediğim bir şey vardı ben Python ile birlikte input ile aldığım bilgileri ya Word'e ya da Excel tarzı bir programa işlemesini istiyorum mümkün müdür?
 
Cevabın için teşekkür ederim kopyala yapıştırdan bahsettiniz nereden bulabilirim kopyalayacak kodları GitHub diye bir yer hakkında yazılar okudum orası güvenilir midir
Eğer doğru kaynakları bulursanız evet, Github güvenilir bir platformdur. Fakat Github'da kaynak bulmak eğer nasıl kullanacağınızı bilmiyorsanız bir hayli zordur. Benim önerim tıpkı Technopat gibi olan fakat sadece yazılım ve programlamaya odaklanmış, ingilizce bir forum sitesi olan Stackoverflow'dan yana olur. Zaten çoğu istediğiniz şeyi ingilizce olarak arattığınızda karşınıza ilk bu site çıkar. Fakat Python temellerini bilmeden kopyala yapıştır yapmak, öğrenmek açısından işkence olur. Bu nedenle her zaman kullanmanızı önermem.

Python ile birlikte input ile aldığım bilgileri ya Word'e ya da Excel tarzı bir programa işlemesini istiyorum mümkün müdür?
Tabii ki mümkün. Çeşitli kütüphanelerle yapabilirsiniz. Örnek : csv, openpyxl, docx. Kısa bir araştırma ile kolayca yapılabilecek şeyler. Ayrıca, neredeyse bütün kütüphanelerin yönergelerinin bulunduğu yerleri PyPI sitesi aracılığı ile kolayca bulabilirsiniz.
 
Eğer doğru kaynakları bulursanız evet, GitHub güvenilir bir platformdur. Fakat GitHub'da kaynak bulmak eğer nasıl kullanacağınızı bilmiyorsanız bir hayli zordur. Benim önerim tıpkı Technopat gibi olan fakat sadece yazılım ve programlamaya odaklanmış, İngilizce bir forum sitesi olan Stackoverflow'dan yana olur. Zaten çoğu istediğiniz şeyi İngilizce olarak arattığınızda karşınıza ilk bu site çıkar. Fakat Python temellerini bilmeden kopyala yapıştır yapmak, öğrenmek açısından işkence olur. Bu nedenle her zaman kullanmanızı önermem.

Tabii ki mümkün. Çeşitli kütüphanelerle yapabilirsiniz. Örnek: csv, openpyxl, docx. Kısa bir araştırma ile kolayca yapılabilecek şeyler. Ayrıca, neredeyse bütün kütüphanelerin yönergelerinin bulunduğu yerleri PyPI sitesi aracılığı ile kolayca bulabilirsiniz.

Bir türlü import edemedim internetten araştırdığımda birçok kişi CMD üzerinden yapıyor fakat ben yaptığımda öyle bir komutun oladığı ile alakalı bir hata alıyorum Python'un üzerinden yaptığımda ise kendi sitesinde yazdığım kodları traceback başlığı altında hata olarak belirtiyor.

Traceback (most recent call last):
File "C:\Users\hakan\PycharmProjects\pythonProject1\main.py", line 3, in <module>
Wb = load_workbook("isimler. Xlsx")
File "D:\pyton\lib\site-packages\openpyxl\reader\excel.py", line 315, in load_workbook.
Reader = excelreader(filename, read_only, keep_vba,
File "D:\pyton\lib\site-packages\openpyxl\reader\excel.py", line 124, in __init__.
Self. Archive = _validate_archive(FN)
File "D:\pyton\lib\site-packages\openpyxl\reader\excel.py", line 96, in _validate_archive.
Archive = zipfile(filename, 'r')
File "C:\Users\hakan\AppData\Local\Programs\Python\Python310\lib\zipfile.py", line 1249, in __init__.
Self. Fp = IO. Open(file, filemode)
Filenotfounderror: [Errno 2] no such file or directory: 'isimler. Xlsx'.

From openpyxl import workbook, load_workbook.

Kütüphaneyi indirdikten sonra yaptığım yeni projede bunu yazdım.
 
Kodlamaya daha yeni başlamışsın. En azından BTK Akademi'deki ve YouTube'dan birkaç tane kanaldan kodlama eğitim serisi izlemelisinki kafanda otursun. Bunları anladıktan sonra zaten sorduğun sorunun cevabını biliyor olacaksın.
 

Yeni konular

Geri
Yukarı