#python #python-3.x #string #type-conversion #numbers
Вопрос:
Если я попытаюсь вставить в базу данных, используя комбинацию для выбора времени или даты, такие числа, как 05 или 10 (например, 05.10), эти числа отображаются без нуля. Итак, у меня будет 5 и 1, и я получу это 5.1. Есть ли какой-то способ отобразить и 0, или вам нужно преобразовать их в строку? Если да, то я пробовал, но получаю ошибку. Я не знаю, является ли преобразование в строку правильным решением. У вас есть решения?
Мне нужно обязательно отображать их с 0 (например, 05 или 10). Мне не нужен тккалендар.
ОБНОВЛЕНИЕ: преобразование в строку не решает проблему. Очевидно, я не получаю ошибку, но проблема та же самая. Например, если я выберу 04 и 10 в двух выпадающих списках, я получу 4.1. Я хотел бы получить 04.10
def date(): day = combo_date_day.get() month = combo_date_month.get() result = (str)day '.' (str)month return result combo_date_month = ttk.Combobox(root, font=("Arial", 11), width=6, textvariable=month) combo_date_month['values'] = ("01", "02", "03", "04", "05", "06", "07", "08", "09", "10", "11", "12") combo_date_month.place(x=105, y=150) combo_date_month.set("Month") combo_data_day = ttk.Combobox(root, font=("Arial", 11), width=6, textvariable=day) combo_data_giorno['values'] = ("01", "02", "03", "04", "05", "06", "07", "08", "09", "10", "11", "12", "13", "14", "15", "16", "17", "18", "19", "20", "21", "22", "23", "24", "25", "26", "27", "28", "29", "30", "31") combo_data_day.place(x=15, y=150) combo_data_day.set("Day")
Ошибка
result = (str)day '.' (str)month ^ SyntaxError: invalid syntax
Комментарии:
1. Ошибка здесь — это synatx для приведения типов
typename(variable)
. Так что тебе следует написатьstr(day)
.
Ответ №1:
Это недопустимое преобразование типов. Синтаксис, которому вы следовали, можно увидеть в Java. Но в python синтаксис-str(переменная).
def date(): day = combo_date_day.get() month = combo_date_month.get() result = str(day) '.' str(month) return result #Example day or month combo_date_month = ttk.Combobox(root, font=("Arial", 11), width=6, textvariable=month) combo_date_month['values'] = ("01", "02", "03", "04", "05", "06", "07", "08", "09", "10", "11", "12") combo_date_month.place(x=105, y=150) combo_date_month.set("Month")
Итак, вот почему это приводит к синтаксической ошибке.
Комментарии:
1. Преобразование в строку не устранило ошибку. Я попробовал ваш код, спасибо за ответ, но у меня все еще та же проблема. Например, если я выберу 04 и 10 в двух выпадающих списках, я получу 4.1. Я хотел бы получить 04.10
2. Пожалуйста, предоставьте код о combo_date_day и получите()
3. Выполнено. Обновленный вопрос. Код один и тот же для месяцев
4. Пожалуйста, расскажите, как выглядят combo_date_month и combo_date_day. приведите пример, пожалуйста.
5. Например, если я выберу 04 и 10 в двух выпадающих списках день и месяц, я получу 4.1. Я хотел бы получить 04.10