Справочник Программиста
6.28K subscribers
1.36K photos
387 videos
64 files
1.71K links
По рекламе - @it_start_programmer
Мои курсы - @courses_from_it_start_bot
Сайт - https://it-start.online/
YouTube - https://www.youtube.com/@it_start
Реклама на бирже - https://telega.in/c/programmersGuide_1

Предложить идею: @it_start_suggestion_bot
Download Telegram
#Конвертацияmarkdown
Код из видео:

import markdown

with open('Story.md', 'r') as f:
text = f.read()
html = markdown.markdown(text)

with open('Story.html', 'w') as f:
f.write(html)
#СозданиеКруговыхДиаграммНаpython
Код из видео:

import matplotlib.pyplot as plt
import numpy as np

y = np.array([50, 25, 25, 15])
myexp = [0, 0, 0.2, 0]
mylabels = ["Москва", "Санкт-Петербург", "Екатеринбург", "Пермь"]
mycolors = ["lime", "green", "brown", "yellow"]
plt.pie(y, labels=mylabels, explode=myexp, shadow=True, colors=mycolors)
plt.legend(title="Население городов: ")
plt.show()
#ИграУгадайЧислоPython
Код из видео:

import random

play = ''

while play != 'н':
input('Загадайте число от 1 до 100: ')
truth = ''
tmp = [1, 100]
count = 0
rnd = random.randint(1, 100)
while truth != 'д':
truth = input(f'Может быть это {rnd}? (д/н): ')
count += 1
if truth == 'н':
if input(f'Оно больше или меньше, чем {rnd}? (б/м): ') == 'б':
tmp[0] = rnd
rnd = (tmp[0] + tmp[1]) // 2
else:
tmp[1] = rnd
rnd = (tmp[0] + tmp[1]) // 2

print(f'Ура! Угадал число с {count} попыток!')
play = input('Сыграем ещё раз? (д/н): ')
#ПриложениеГенераторФактов
Код из видео:

import randfacts
from tkinter import *
from googletrans import Translator


def get_fact():
t1.delete('1.0', END)
f = randfacts.get_fact(False)
a = translator.translate(f, dest='ru')
t1.insert(END, a.text)


root = Tk()
root.geometry('700x180+400+500')
root.resizable(width=False, height=False)
root.title('Рандомные факты')
translator = Translator()

t1 = Text(root, width=60, height=2, font='Arial 15 bold',
padx=10,
pady=10,
wrap=WORD
)
t1.pack(pady=20)

btn = Button(root, text='Сгенерировать факт', font='Arial 15 bold', command=get_fact)
btn.pack(padx=5)

root.mainloop()
#КонвертерЦельсияВФаренгейты
Код из видео:

from tkinter import *


def convert():
c = int(e.get())
f = ((c * 9) / 5) + 32
converted['text'] = f


root = Tk()
root.title('Конвертер градусов Цельсия в Фаренгейта')
root.resizable(width=False, height=False)
root.geometry('400x250')
root['bg'] = 'black'

lb = Label(root, text='Введите температуру в градусах Цельсия: ', font='Arial 12 bold', fg='lime', bg='black')
lb.pack(pady=10)

e = Entry(root, font='Arial 16 bold')
e.pack(pady=10)

btn = Button(root, text='Перевести в Фаренгейты', font='Arial 10 bold', pady=5, padx=5, command=convert)
btn.pack(pady=10)

lb2 = Label(root, text='Температура в градусах Фаренгейта: ', font='Arial 12 bold', fg='lime', bg='black')
lb2.pack(pady=10)

converted = Label(root, text='', font='Arial 25 bold', bg='black', fg='lime')
converted.pack()


root.mainloop()
👍1
#КалендарьНаPythonTkinter
Код из видео:

from tkinter import *
import calendar
import datetime


def back():
global month, year
month -= 1
if month == 0:
month = 12
year -= 1
fill()


def next():
global month, year
month += 1
if month == 13:
month = 1
year += 1
fill()



def fill():
info_label['text'] = calendar.month_name[month] + ', ' + str(year)
month_days = calendar.monthrange(year, month)[1]
if month == 1:
back_month_days = calendar.monthrange(year - 1, 12)[1]
else:
back_month_days = calendar.monthrange(year, month - 1)[1]
week_day = calendar.monthrange(year, month)[0]

for n in range(month_days):
days[n + week_day]['text'] = n + 1
days[n + week_day]['fg'] = 'black'
if year == now.year and month == now.month and n ==now.day:
days[n + week_day - 1]['bg'] = 'green'
days[n + week_day]['bg'] = 'grey'
else:
days[n + week_day]['bg'] = 'gray'

for n in range(week_day):
days[week_day - n - 1]['text'] = back_month_days - n
days[week_day - n - 1]['fg'] = 'gray'
days[week_day - n - 1]['bg'] = '#f3f3f3'
for n in range(6 * 7 - month_days - week_day):
days[week_day + month_days + n]['text'] = n + 1
days[week_day + month_days + n]['fg'] = 'gray'
days[week_day + month_days + n]['bg'] = '#f3f3f3'


root = Tk()
root.title('Календарь')
days = []
now = datetime.datetime.now()
year = now.year
month = now.month
back_button = Button(root, text='<', command=back)
back_button.grid(row=0, column=0, sticky=NSEW)
next_button = Button(root, text='>', command=next)
next_button.grid(row=0, column=6, sticky=NSEW)
info_label = Label(root, text='0', width=1, height=1, font='Arial 16 bold', fg='blue')
info_label.grid(row=0, column=1, columnspan=5, sticky=NSEW)

for n in range(7):
lbl = Label(root, text=calendar.day_abbr[n], width=1, height=1, font='Arial 10 bold', fg='darkblue')
lbl.grid(row=1, column=n, sticky=NSEW)

for row in range(6):
for col in range(7):
lbl = Label(root, text='0', width=4, height=2, font='Arial 16 bold')
lbl.grid(row=row+2, column=col, sticky=NSEW)
days.append(lbl)

fill()

root.mainloop()
👍6
#КалькуляторЗаработка
Код из видео:

from tkinter import *


def calculation():
earnings = float(hourly.get()) * float(hours.get())
result['text'] = f"{name.get()} заработал {earnings}Р на этой неделе."
result.pack()


root = Tk()
root.title('Калькулятор заработка')
root.geometry('500x310')
root.resizable(width=False, height=False)
root['bg'] = 'black'

Label(root, text='Введите имя сотрудника: ', font='Arial 15 bold', fg='lime', bg='black').pack(pady=5)

name = Entry(root, font='Arial 13 bold')
name.pack(pady=5)

Label(root, text='Почасовая оплата сотрудника: ', font='Arial 15 bold', fg='lime', bg='black').pack(pady=5)

hourly = Entry(root, font='Arial 13 bold')
hourly.pack(pady=5)

Label(root, text='Кол-во часов прорпботанных за неделю: ', font='Arial 15 bold', fg='lime', bg='black').pack(pady=5)

hours = Entry(root, font='Arial 13 bold')
hours.pack(pady=5)

btn = Button(root, text='Рассчитать', font='Arial 15 bold', command=calculation)
btn.pack(pady=5)

result = Label(root, font='Arial 15 bold', fg='lime', bg='black')


root.mainloop()
Весёлый видос намечается)
#ПриложениеГенераторАнекдотов
Код из видео:

from tkinter import *
import pyjokes
from googletrans import Translator


def generate():
joke = pyjokes.get_joke()
a = translator.translate(joke, dest='ru')
t.delete('1.0', END)
t.insert('1.0', a.text)


root = Tk()
root.title('Генератор анекдотов')
root.geometry('500x300')
root.resizable(width=False, height=False)
translator = Translator()

btn = Button(root, text='Сгенерировать анекдот', font='Arial 16 bold', command=generate)
btn.pack(pady=10)

t = Text(root, font='Arial 16 bold',
pady=10,
padx=10,
wrap=WORD
)
t.pack()


root.mainloop()
#ДиктофонНаPython
Код из видео:

import sounddevice
from scipy.io.wavfile import write


def voice_recorder(seconds, file):
print('Запись началась')
recording = sounddevice.rec((seconds * 44100), samplerate=44100, channels=2)
sounddevice.wait()
write(file, 44100, recording)
print('Запись завершена')


voice_recorder(10, 'Запись.wav')