locale.Error: unsupported locale setting sorunu

Merhaba,

ttkbootstrap kütüphanesini kullandığımda unsupported locale setting hatasıyla karşılaşıyorum. Kod içerisinde herhangi bir Türkçe karakter bulunmuyor. Tam hata çıktısı şu şekilde:

Traceback (most recent call last):
  File "c:\Users\Okan\Desktop\Python\Projects\Training\tkinter_01.py", line 3, in <module>
    import ttkbootstrap as ttk
  File "C:\Users\Okan\AppData\Roaming\Python\Python312\site-packages\ttkbootstrap\__init__.py", line 3, in <module>
    from ttkbootstrap.widgets import *
  File "C:\Users\Okan\AppData\Roaming\Python\Python312\site-packages\ttkbootstrap\widgets.py", line 14, in <module>
    from ttkbootstrap.dialogs import Querybox
  File "C:\Users\Okan\AppData\Roaming\Python\Python312\site-packages\ttkbootstrap\dialogs\__init__.py", line 1, in <module>
    from ttkbootstrap.dialogs.dialogs import *
  File "C:\Users\Okan\AppData\Roaming\Python\Python312\site-packages\ttkbootstrap\dialogs\dialogs.py", line 536, in <module>
    class DatePickerDialog:
  File "C:\Users\Okan\AppData\Roaming\Python\Python312\site-packages\ttkbootstrap\dialogs\dialogs.py", line 566, in DatePickerDialog
    locale.setlocale(locale.LC_ALL, locale.setlocale(locale.LC_TIME, ""))
  File "C:\Program Files\Python312\Lib\locale.py", line 615, in setlocale
    return _setlocale(category, locale)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
locale.Error: unsupported locale setting

Baya araştırmasını yaptım ancak çözüme ulaşamadım. Yardımcı olabilir misiniz?

Kodu paylaşmanız gerekiyor. _setlocale içerisindeki locale parametresini hatalı vermiş olabilirsiniz.

Kod içerisine herhangi birşey eklemedim:

import tkinter as tk
#from tkinter import ttk
import ttkbootstrap as ttk

import locale
locale.setlocale(locale.LC_ALL, 'tr_TR.utf8')

# function
def convert():
    output_string.set(entry_int.get() * 1.61)

# window
window = tk.Tk()
window.title('Demo')
window.geometry('300x150')



# title
title_label = ttk.Label(master=window, text='Miles to Kilometers', font='Calibri 18 bold')
title_label.pack()


# input field
input_frame = ttk.Frame(master=window)
entry_int = tk.IntVar()
entry = ttk.Entry(master=input_frame, textvariable=entry_int)
button = ttk.Button(master=input_frame, text='Convert', command=convert)
entry.pack(side='left', padx=10)
button.pack(side='left')
input_frame.pack(pady=10)

# output
output_string = tk.StringVar()
output_label = ttk.Label(master=window, text='Output', font='Calibri 18 bold', textvariable=output_string)
output_label.pack(pady=10)


# run
window.mainloop()

locale.setlocale(locale.LC_ALL, ‘Turkish_Turkey.1254’) windows
Yazbel belgesinden alinti

Bu şekilde ekledim:

import tkinter as tk
#from tkinter import ttk
import ttkbootstrap as ttk
import locale

locale.setlocale(locale.LC_ALL, 'Turkish_Turkey.1254')

Ancak aynı hatayı verdi:

Traceback (most recent call last):
  File "c:\Users\Okan\Desktop\Python\Projects\Training\tkinter_03.py", line 3, in <module>
    import ttkbootstrap as ttk
  File "C:\Users\Okan\AppData\Roaming\Python\Python312\site-packages\ttkbootstrap\__init__.py", line 3, in <module>
    from ttkbootstrap.widgets import *
  File "C:\Users\Okan\AppData\Roaming\Python\Python312\site-packages\ttkbootstrap\widgets.py", line 14, in <module>
    from ttkbootstrap.dialogs import Querybox
  File "C:\Users\Okan\AppData\Roaming\Python\Python312\site-packages\ttkbootstrap\dialogs\__init__.py", line 1, in <module>
    from ttkbootstrap.dialogs.dialogs import *
  File "C:\Users\Okan\AppData\Roaming\Python\Python312\site-packages\ttkbootstrap\dialogs\dialogs.py", line 536, in <module>
    class DatePickerDialog:
  File "C:\Users\Okan\AppData\Roaming\Python\Python312\site-packages\ttkbootstrap\dialogs\dialogs.py", line 566, in DatePickerDialog
    locale.setlocale(locale.LC_ALL, locale.setlocale(locale.LC_TIME, ""))
  File "C:\Program Files\Python312\Lib\locale.py", line 615, in setlocale
    return _setlocale(category, locale)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
locale.Error: unsupported locale setting

normalde sizin kodunuzdaki localeyi değiştirmeden çalıştırdım hiçbir hata vermedi.

Hata kullandiginiz kutuphanede (veya Windows ayarlarinda). Kutuphanenin yaraticilariyla irtibata gecmenizi tavsiye ederim.

Veya bazen burada da oluyor sorunu inceleyip cozebilecek 1-2 kisi, beklemeyi de deneyebilirsiniz.

1 Beğeni

Şöyle deneyin bir de:

C:\Users\Okan\AppData\Roaming\Python\Python312\site-packages\ttkbootstrap\dialogs\dialogs.py

dosyasının 566. satırında yer alan

locale.setlocale(locale.LC_ALL, locale.setlocale(locale.LC_TIME, ""))

ifadesini

locale.setlocale(locale.LC_ALL, "tr_TR.utf8")

olarak değiştirip, yeniden çalıştırmayı deneyin.

1 Beğeni

Süpersin hocam. Oldu. Teşekkür ederim.

1 Beğeni