Как писать верхнюю запятую python в консоли
Перейти к содержимому

Как писать верхнюю запятую python в консоли

  • автор:

Как в Sublime Text 3 запускать код Python-a?

Пишу код Python в Sublime Text 3, но чтобы проверить как программа работает, надо запускать программу через консоль.
Подскажите, как запускать python код через этот редактор.
Заранее спасибо!

  • Вопрос задан более трёх лет назад
  • 168747 просмотров

4 комментария

Средний 4 комментария

Возможно, не совсем по теме, но как Python-программист, советую, попробуйте PyCharm. Вы забудете про Саблайм очень быстро 😉

Алексей Мистин @Mistin Автор вопроса
Я пробовал PyCharm. Тяжёлая программа, мне не очень понравилась. хотелось бы просто редактор иметь)
Дмитрий @EvilsInterrupt

sintez: Не не не. ST сложно выпилить «из пальцев» 😉 Он как «вторая кожа» 😉 Проще VIM-ера уговорить пересесть на Visual Studio, чем юзера ST на PyChar )

yarkov

Дмитрий: люто плюсую )))
Решения вопроса 1

Есть много вариантов, первый это ctrl + b, но он не поддерживает ввод. Поетому советую использовать SublimeRELP, установить его не так сложно, просто воспользуйтесь Package Control -> Install Package -> SublimeRELP. Теперь ви можете Tools -> SublimeRELP -> Python -> Run Current file. Но это поддерживает только Python2.7 и пользоваться не удобно. Для того что бы исправить это все открываем Preferences -> Key Bindings -> User и добавляем такое:

(в квадратние скобки).
Теперь при Ctrl + b все должно работать.

Ответ написан более трёх лет назад
Нравится 22 5 комментариев

выдаёт ошибку WindowsError(2, ‘\xcd\xe5 \xf3\xe4\xe0\xe5\xf2\xf1\xff \xed\xe0\xe9\xf2\xe8 \xf3\xea\xe0\xe7\xe0\xed\xed\xfb\xe9 \xf4\xe0\xe9\xeb.’)

и у меня вылетает ошибка, о том что неожиданный символ запятая скобка или еще чего-то чего

FIONover

ivan_gorodetskii @ivan_gorodetskii

Спасибо, дай бог здоровья тебе! Не забывайте запятую поставить перед всей конструкцией, если у вас был код до этого, и главное общий код чтобы был в [ ]

Python-сообщество

[RSS Feed]

  • Начало
  • » Python для новичков
  • » Не получается впихнуть алгоритм калькулятора сложных процентов в Telegram Bot’a.

#1 Дек. 20, 2020 21:24:50

Gorni_Kozel Зарегистрирован: 2020-12-20 Сообщения: 1 Репутация: 0 Профиль Отправить e-mail

Не получается впихнуть алгоритм калькулятора сложных процентов в Telegram Bot’a.

Здравствуйте!
Цель проекта: создать универсальный калькулятора для себя и моих однокурсников на финансовом направлении.
Реализация: пайтон последней версии, telegrambotapi последней версии.
Моя задумка реализации: всунуть уже мною написанный под пк(на консоли только работает), уже имеющийся скрипт — алгоритм вычисления сложной процентой ставки раз в n промежуток времени, под среду телеграмботапи.
Проблема: В чем она, я тольком не пойму — но как понимаю исходя из скудности гугл инфы о калькуляторах на телеграмботапи, телеграм и алгебраические вычисления не сильно дружат.
Скрипт калькулятора на консоли:

K = int(input('Введите первоначальную сумму K: ')) #первоначальная сумма n = int(input('Введите число лет n: ')) #число лет klow = int(input('Число начислений в год ( Год(12), полгода(6) ) k: ')) #квартал пока нету, год и полгода в месяцах r = int(input('Введите сложную годовую процентную ставку r: ')) Knk = int running = True #print('K_n*klow = ' + str(K*(1+r/100*klow)**n*klow)) a = float(1+(r/(100*klow))) w = float(n*klow) c = float(a**w) print("-----> K"+str(w)+" = " + str(K * c)) 

Скрипт бота:

import telebot bot = telebot.TeleBot('понятное дело что тут придется скрыть)') #keyboard1 = telebot.types.ReplyKeyboardMarkup(True, True) #keyboard1.row('Зум-айди', '/eko') K = int n = int klow = int r = int Knk = int #сверху мы видим собственно переменные которые я создал как в калькуляторе. @bot.message_handler(commands=['start']) def send_welcome(message): bot.send_message(message.chat.id, 'Для начала работы со мной, введи \n/start . ') bot.send_message(message, "Я - бот курса 111063.\n/mat\n/eko\n/fil\n/his\n/inf\n/eng") #reply_markup=keyboard1 bot.send_message(message.chat.id, 'Калькулятор сложных процентов - /knk') @bot.message_handler(commands=['mat', 'eko', 'fil', 'his', 'inf', 'eng']) def zoomid(message): #дефолт message, uroki - то что в принципе и должно отвечать за заданного в переменной uroki = ['mat', 'eko', 'fil', 'his', 'inf', 'eng'] mat = 7490563693 eko = 9433130879 fil = 8821266565 his = 4792894841 inf = 3273128376 eng = 3377977051 if message.text == '/mat': bot.send_message(message.chat.id, 'Zoom ID старого ублюдка:' + str(mat)) elif message.text == '/eko': bot.send_message(message.chat.id, 'Zoom ID безмикрофонного:' + str(eko)) elif message.text == '/fil': bot.send_message(message.chat.id, 'Zoom ID:' + str(fil)) elif message.text == '/his': bot.send_message(message.chat.id, 'Zoom ID:' + str(his)) elif message.text == '/inf': bot.send_message(message.chat.id, 'Zoom ID:' + str(inf)) elif message.text == '/eng': bot.send_message(message.chat.id, 'Zoom ID:' + str(eng)) #снизу идет уже чисто моя логика, сверху же писалось под исходники #ВВОД ДАННЫХ К Н КЛОУ Р #ОПЕРАЦИЯ #РЕЗУЛЬТ @bot.message_handler(commands=['rez'])#попытка создать команду показывающую результат def calik(message): K = int n = int klow = int r = int Knk = int #print('Knk = ' + str(K*(1+r/100*klow)**n*klow)) #просто прототип вычисления a = float(1+(r/(100*klow))) w = float(n*klow) c = float(a**w) print("-----> K"+str(w)+" = " + str(K * c)) #это тут просто так висит prin = 'K' + eval(str(w)+ '=' + str(K* c)) #тут по сути должен выводиться ответ таким способом #user_result = eval(str(user_num1) + user_proc + str(user_num2)) #копировал с другого кода для прототипа return prin @bot.message_handler(commands=['calc'])#Это попытка создать нечто типа K = int(input()) def k_n_klow_r(message): K = int(str(message.text)) n = int(str(message.text)) klow = int(str(message.text)) r = int(str(message.text)) Knk = int(str(message.text)) calik() #попытка, дабы функция калик вызывалась уже на этом моменте и не приходилось псиать отдельно команду результата bot.polling() 

Прикрепляю код бота чтобы в случае чего было легче разобарться
Пожалуйста, кто сможет, дайте совет — я давно преследую эту цель, а цель явно не хочет в руки лезть. Либо же, если тут ничего невозможно сделать , то как мне осуществить этот гребанный калькулятор на андроиде — я уже все нервы сломал(((

attachment

Прикреплённый файлы:
bot.py (1,4 KБ)

Как в vs code запускать скрипты python с аргументами командной строки?

введите сюда описание изображения

Хотелось бы в vs code запускать скрипты с аргументами используя что-то вроде того что есть в pycharm: Т.е. написать какие то постоянные аргументы и постоянно запускать скрипт с ними. Через командную строку запускать и менять их при случае не так удобно. Так вот, как сделать подобное в VS CODE?

Отслеживать
задан 15 апр 2020 в 6:01
140 2 2 серебряных знака 10 10 бронзовых знаков

3 ответа 3

Сортировка: Сброс на вариант по умолчанию

Открываете папку с файлом, который собираетесь запускать (меню File -> Open folder ), слева в навигаторе (Explorer) выбираете нужный файл. Дальше идете в меню Run -> Add configuration (т.е. добавить конфигурацию запуска), выбираете «Python file» (т.е. запуск обычного файла) или другой нужный вариант (например debug для запуска с в режиме отладки). После этого в подпапке .vscode создается файл launch.json примерно такого содержания:

< // Use IntelliSense to learn about possible attributes. // Hover to view descriptions of existing attributes. // For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387 "version": "0.2.0", "configurations": [ < "name": "Python: Текущий файл", "type": "python", "request": "launch", "program": "$", "console": "integratedTerminal" > ] > 

В разделе «configurations» добавляете ключ «args», в нем в списке перечисляете передаваемые аргументы, например:

< // Use IntelliSense to learn about possible attributes. // Hover to view descriptions of existing attributes. // For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387 "version": "0.2.0", "configurations": [ < "name": "Python: Текущий файл", "type": "python", "request": "launch", "program": "$", "console": "integratedTerminal", "args": ["first", "second", "third"] > ] > 

name тоже можно поменять на то которое вам нужно.

Сохраняете файл. После этого в панели слева переходите в раздел Run, выбираете сверху конфигурацию с тем именем, которое вы прописали в name, жмете зеленый треугольник слева от названия выбранной конфигурации (не справа сверху от открытого файла) — файл запускается с нужным набором параметром.

import sys print(*sys.argv) 

Результат (вывод программы обведен красным):

Статья Пишем графическую оболочку на Python — часть 1

Поскольку на форуме я не заметил программ с GUI, то решил дать несколько базовых уроков.

Есть почитатели как и консольных вариантов, так и GUI. И вопрос что лучше совершенно неверный. Самые сложные программы всегда стараются сделать с оболочкой, иначе софт обрастает диким количеством опций, в которых трудно разобраться. Кроме этого, если программа пишется не для личного пользования, то нужно учитывать, что большая часть юзеров сидит под ОС Windows, и привыкла к графике. Поэтому даже если вы ярый приверженец консоли, но например, делаете программы на заказ, то уметь писать программы с оболочкой просто необходимо.

Есть много вариантов Python GUI. Вот неполный список:

Tkinter
PyGTK
PySide
PyQt
wxPython

Мы будем делать интерфейс с помощью Tkinter. Главным преимуществом его является встроенность в Python. То есть не понадобится устанавливать каких-то сторонних модулей, библиотек и прочего ПО. Из минусов можно отметить менее презентабельный внешний вид по сравнению с другими фреймворками и обёртками.

Начнём с заготовки, которая будет главным скилетом, на который можно накидать всё что угодно.

from tkinter import * root = Tk() root.title("Моя первая графическая программа на Python") root.geometry("400x250") root.resizable(width=False, height=False) root.mainloop()

Запускаем, и получим такое окошко

gui.png

Теперь пройдёмся по коду и разберёмся что там написано.

from tkinter import * — импортируем tkinter, а значок звёздочки обозначает что нам будут предоставлены все возможности библиотеки. Можно писать по-другому, импортируя исключительно то, что будет использоваться в программе, например так: from tkinter import Tk, Label Но это не очень удобно перечислять через запятую необходимые виджеты.

root = Tk() — вместо root вы можете писать всё что угодно, а Tk() это библиотека модуля tkinter , который является неким обработчиком инструкций для языка Tcl.

root.title(«Моя первая графическая программа на Python») — уже из названия ясно что title является заголовком, в который вы можете записать название программы, версию.

root.geometry(«400×250″) — размеры окна программы. По умолчанию программа запускается в произвольном месте монитора, но стремится к верхнему левому углу экрана. Мы может сами устанавливать место где должна отображаться программа. Для этого добавим в эту конструкцию к ширине и высоте координаты X и координаты Y». При запуске окно будет находиться на 300 пикселей вправо и на 250 пикселей вниз от верхнего левого угла экрана root.geometry(«400×250+300+250»)

root.resizable(width=False, height=False) — в большинстве случаев нам не нужно чтобы программа меняла размеры окна, и параметрами False мы запрещаем изменения размеров ширины и высоты.

root.mainloop() — метод mainloop запускает весь цикл обработки событий, без него графическая оболочка не запустится.

Ну что же, с запуском главного окна разобрались. Теперь настало время продвигаться дальше. В графическом интерфейсе существуют такие виджеты и элементы как Button, Label, Entry, Radiobutton, Checkbutton и другие. Но всё это добро нужно как-то позиционировать в главном окне программы. Для этого существуют методы pack(), place() и grid() .

Самый простой и популярный метод pack(), применяется для самых простеньких программ. Метод place() почти не используется, а метод grid() самый сложный и самый точный. У него больше всего возможностей, и он позволяет расположить элементы именно так как вы это задумали.

Начнём конечно с самого простого — метод pack()

Добавим к нашей программе кнопку

from tkinter import * root = Tk() root.title("Моя первая графическая программа на Python") root.geometry("400x250+300+250") root.resizable(width=False, height=False) btn1 = Button(text="BUTTON", background="#000000", foreground="#fff", padx="15", pady="2", font="12") btn1.pack() root.mainloop()

И вот кнопка у нас появилась

gui2.png

btn1 = Button(text=»BUTTON», background=»#000000″, foreground=»#fff», padx=»15″, pady=»2″, font=»12″) Здесь мы создали Button с названием btn1, написали на кнопке текст BUTTON, и задали цвета для текста и фона кнопки. Также установлены отступы от текста по осям x и y, и размер шрифта. У шрифта можно не только менять размер, но и сам стиль шрифта. Поставьте например font=»Arial 10″ и сравните результаты.

В данном случае ширина кнопки была равна содержимому + отступы. Но кнопке также можно задать ширину и высоту. Попробуйте добавить значения в код width=12,height=4
btn1.pack() — здесь произошла упаковка нашей кнопки, и она стала видимой
Если мы не указали явным образом где должна располагаться кнопка, то она по умолчанию принимает следующий параметр btn1.pack(side=TOP) Их всего может быть у side 4 — BOTTOM, TOP, LEFT, RIGHT

Виджет Label или текстовая метка. Добавим её в наш код

label = Label(text="Привет Codeby!", font="12", pady="10") label.pack() btn1 = Button(text="BUTTON", background="#000000", foreground="#fff", padx="15", pady="2", font="12") btn1.pack()

Обратите внимание — метка добавлена выше кнопки, поэтому она и она и отображается выше. Стоит их поменять местами, и в окошке они тоже поменяются местами, попробуйте.

gui3.png

  • bg/background: фоновый цвет
  • fg/foreground: цвет текста

Сделать оболочку как на скриншоте

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *