Zorin OS’de Python nasıl kullanılır?

  • Konuyu başlatan Konuyu başlatan 4284
  • Başlangıç Tarihi Başlangıç Tarihi
  • Mesaj Mesaj 32
  • Görüntüleme Görüntüleme 626
"~" ev klasörün demek root'a atmana gerek yok. "/home/kullanıcıadın/.local/share/applications/"
Attım ama uygulamalarda gözükmedi. Bunun her yerde çalışacak bir yöntemi yok mu? macOS'taki gibi Python Launcher yok mu, mesela? O açsın direkt.
 
macOS'taki gibi Python Launcher yok mu, mesela? O açsın direkt.
MacOS'ta uygulama sistemi farklı, Windows'ta farklı, Linux'ta farklı. Taşınabilir yürütülebilir için desktop dosyasına gerek yok. Ama ikon olsun sabitleyebileyim istiyorsanız bunu çoğu dağıtımda yapmak dışında bir çareniz yok.

Attım ama uygulamalarda gözükmedi.
Desktop dosyasını doğru hazırladığınızdan emin misiniz? Dosyayı yanlış doldurduysanız da görünmeyebilir.
 
"~" ev klasörün demek root'a atmana gerek yok. "/home/kullanıcıadın/.local/share/applications/"
Ayrıca, 'Program olarak çalıştır' denilince açması gerekmiyor mu? Bende onda da açmıyor.
Olur da benim uygulamada mı bir sorun var diye, uygulamanın kodları:
[CODE title="Kod"]

#!/bin/env python3
import tkinter as tk
from tkinter import ttk

class HexConverterApp:
def init(self, root):
self.root = root
self.root.title("Hexadecimal Dönüştürücü")
self.root.geometry("400x300")

# Frame for text to hex conversion
self.frame1 = ttk.Frame(self.root, padding="10")
self.frame1.grid(row=0, column=0, sticky=(tk.W, tk.E, tk.N, tk.S))

self.text_label = ttk.Label(self.frame1, text="Metin:")
self.text_label.grid(row=0, column=0, sticky=tk.W)

self.text_entry = ttk.Entry(self.frame1, width=40)
self.text_entry.grid(row=0, column=1, padx=5)

self.convert_to_hex_button = ttk.Button(self.frame1, text="Hex'e Çevir", command=self.convert_to_hex)
self.convert_to_hex_button.grid(row=0, column=2, padx=5)

self.hex_result_label = ttk.Label(self.frame1, text="Hex Sonuç:")
self.hex_result_label.grid(row=1, column=0, sticky=tk.W)

self.hex_result = ttk.Label(self.frame1, text="", foreground="blue")
self.hex_result.grid(row=1, column=1, columnspan=2, sticky=tk.W)

# Frame for hex to text conversion
self.frame2 = ttk.Frame(self.root, padding="10")
self.frame2.grid(row=1, column=0, sticky=(tk.W, tk.E, tk.N, tk.S))

self.hex_input_label = ttk.Label(self.frame2, text="Hex:")
self.hex_input_label.grid(row=0, column=0, sticky=tk.W)

self.hex_input_entry = ttk.Entry(self.frame2, width=40)
self.hex_input_entry.grid(row=0, column=1, padx=5)

self.convert_to_text_button = ttk.Button(self.frame2, text="Metne Çevir", command=self.convert_to_text)
self.convert_to_text_button.grid(row=0, column=2, padx=5)

self.text_result_label = ttk.Label(self.frame2, text="Metin Sonuç:")
self.text_result_label.grid(row=1, column=0, sticky=tk.W)

self.text_result = ttk.Label(self.frame2, text="", foreground="blue")
self.text_result.grid(row=1, column=1, columnspan=2, sticky=tk.W)

def convert_to_hex(self):
text = self.text_entry.get()
hex_result = text.encode('utf-8').hex()
self.hex_result.config(text=hex_result.upper())

def convert_to_text(self):
hex_text = self.hex_input_entry.get()
try:
bytes_object = bytes.fromhex(hex_text)
text_result = bytes_object.decode('utf-8')
self.text_result.config(text=text_result)
except ValueError:
self.text_result.config(text="Geçersiz Hexadecimal")

if name == "main":
root = tk.Tk()
app = HexConverterApp(root)
root.mainloop()


[/CODE]
 
63. satırda if'de tırnak işareti yok. Hata verdiği için çalışmıyor.

Birkaç hata daha vardı. Kodunuzun düzeltilmiş hali.
[CODE lang="python" title="a.py"]#!/bin/env python3
import tkinter as tk
from tkinter import ttk

class HexConverterApp:
def init(self, root):
self.root = root
self.root.title("Hexadecimal Dönüştürücü")
self.root.geometry("400x300")

# Frame for text to hex conversion
self.frame1 = ttk.Frame(self.root, padding="10")
self.frame1.grid(row=0, column=0, sticky=(tk.W, tk.E, tk.N, tk.S))

self.text_label = ttk.Label(self.frame1, text="Metin:")
self.text_label.grid(row=0, column=0, sticky=tk.W)

self.text_entry = ttk.Entry(self.frame1, width=40)
self.text_entry.grid(row=0, column=1, padx=5)

self.convert_to_hex_button = ttk.Button(self.frame1, text="Hex'e Çevir", command=self.convert_to_hex)
self.convert_to_hex_button.grid(row=0, column=2, padx=5)

self.hex_result_label = ttk.Label(self.frame1, text="Hex Sonuç:")
self.hex_result_label.grid(row=1, column=0, sticky=tk.W)

self.hex_result = ttk.Label(self.frame1, text="", foreground="blue")
self.hex_result.grid(row=1, column=1, columnspan=2, sticky=tk.W)

# Frame for hex to text conversion
self.frame2 = ttk.Frame(self.root, padding="10")
self.frame2.grid(row=1, column=0, sticky=(tk.W, tk.E, tk.N, tk.S))

self.hex_input_label = ttk.Label(self.frame2, text="Hex:")
self.hex_input_label.grid(row=0, column=0, sticky=tk.W)

self.hex_input_entry = ttk.Entry(self.frame2, width=40)
self.hex_input_entry.grid(row=0, column=1, padx=5)

self.convert_to_text_button = ttk.Button(self.frame2, text="Metne Çevir", command=self.convert_to_text)
self.convert_to_text_button.grid(row=0, column=2, padx=5)

self.text_result_label = ttk.Label(self.frame2, text="Metin Sonuç:")
self.text_result_label.grid(row=1, column=0, sticky=tk.W)

self.text_result = ttk.Label(self.frame2, text="", foreground="blue")
self.text_result.grid(row=1, column=1, columnspan=2, sticky=tk.W)

def convert_to_hex(self):
text = self.text_entry.get()
hex_result = text.encode('utf-8').hex()
self.hex_result.config(text=hex_result.upper())

def convert_to_text(self):
hex_text = self.hex_input_entry.get()
try:
bytes_object = bytes.fromhex(hex_text)
text_result = bytes_object.decode('utf-8')
self.text_result.config(text=text_result)
except ValueError:
self.text_result.config(text="Geçersiz Hexadecimal")


root = tk.Tk()
app = HexConverterApp(root)
root.mainloop()
[/CODE]

Çalışan hali:


Pardon forumun eklentisi ile alakalı bir hata olmuş sanırım.
 
@6737
Orijinali böyle. Buraya yüklerken metin bozuluyor, ben de anlamadım.
 
if kısmını doğrudan silip kodu alt satıra indirebilirsin. Bende öyle çalıştı. Gerek yokmuş sanırım, kod biçimlendirme hatalarını düzeltince de çalıştı.
 
if kısmını doğrudan silip kodu alt satıra indirebilirsin. Bende öyle çalıştı. Gerek yokmuş sanırım, kod biçimlendirme hatalarını düzeltince de çalıştı.
Düzenlemiş olduğunuz kodda da aynı sorun var. Açılmıyor; bir ekran geliyor ve 1 saniye sonra gidiyor.
 
Düzenlemiş olduğunuz kodda da aynı sorun var. Açılmıyor; bir ekran geliyor ve 1 saniye sonra gidiyor.
Komut satırından açınca da aynı hata oluyor mu? Şu anda bende düzgün çalışıyor.
 
Komut satırından açınca da aynı hata oluyor mu? Şu anda bende düzgün çalışıyor.
[CODE title="Hata"]ofis@ofis-System-Product-Name:~/.local/share/applications$ python hx.py
'python' Komutu bulunamadı, şunu mu demek istiyorsunuz:
komut 'python3' deb python3 paketinden
komut 'python' deb python-is-python3 paketinden[/CODE]
"python hx.py" yazdım; acaba ben mi yanlış yaptım?
 
Bu siteyi kullanmak için çerezler gereklidir. Siteyi kullanmaya devam etmek için çerezleri kabul etmelisiniz. Daha Fazlasını Öğren.…