C:\Python35\
C:\Python35\Scripts\
pip install PyQt5
pip install PyQt5-tools
pip install spyder
pip install pyperclip
pip install requests
pip install html2text
pip install beautifulsoup4
pip install wget
pip install python-docx
pip install XlsxWriter
pip install openpyxl
pip install Pillow
pip install selenium
pip install wheel
pip install pyinstaller
pip install pypiwin32
pip install pywin32-ctypes
IDLE.bat:
@start /b C:\Python35\pythonw.exe "C:\Python35\Lib\idlelib\idle.pyw"
Spyder3.bat
@start /b C:\Python35\Scripts\spyder3.exe
JetBrains32.bat:
@start /b C:\PyCharm2018\bin\pycharm.exe
JetBrains64.bat:
@start /b C:\PyCharm2018\bin\pycharm64.exe
1.5.1 Настройка в PyCharm мастера для создания QtForm
1.5.2 Настройка для вызова внешнего редактора QtForm
C:\Python35\Lib\site-packages\pyqt5-tools\designer.exe
"$FilePath$"
$FileDir$
Чтобы перенести программу на другой компьютер, где не установлен Python, её нужно скомпилировать в .exe файл. Для этого есть несколько способов, и сегодня мы рассмотрим наиболее простой – библиотеку pyinstaller
Дадим в командной строке две команды:
pip install wheel
pip install pyinstaller
pip install pypiwin32
pip install pywin32-ctypes
Допустим, мы имеем .py файл под названием 1.py, который успешно запускается и работает в качестве скрипта Python. И теперь мы хотим сделать из него .exe файл, чтобы мы могли просто дать его другу, и не переживать об установке питона и модулей на другом компьютере.
Положим наш скрипт на диск D: далее откроем командную строку и введем следующие команды
D:
pyinstaller –onedir –onefile –name=myprogram "D:\1.py" –paths C:\Python35\Lib\site-packages\PyQt5\Qt\bin
Через некоторое время компиляция завершится и в подкаталоге dist появится EXE-шник
Некоторые ключи для компиляции:
--onefile – сборка в один файл, т.е. файлы .dll не пишутся
–-windowed -при запуске приложения, будет появляться консоль
–-noconsole – при запуске приложения, консоль появляться не будет
–-icon=app.ico – добавляем иконку в окно
–-paths – возможность вручную прописать путь к необходимым файлам, если pyinstaller
не может их найти (например: –paths C:\Python35\Lib\site-packages\PyQt5\Qt\bin)
cmd
python -m pip install pip==9.0.1
pip uninstall spyder
pip install spyder
pip uninstall pyinstaller
pip install pyinstaller
sudo apt-get install qt5-default
sudo apt-get install qtcreator
К неизменяемым (immutable) типам относятся: целые числа (int), числа с плавающей точкой (float), комплексные числа (complex), логические переменные (bool), кортежи (tuple), строки (str) и неизменяемые множества (frozen set).
К изменяемым (mutable) типам относятся: списки (list), множества (set), словари (dict).
Целые числа могут быть любой длины, они ограничиваются лишь доступной памятью.
Числа с плавающей запятой имеют ограниченную точность. Визуально разницу между целым числом и числом с плавающей запятой можно заметить в консоли по наличию точки: 1 – целое число, 1.0 – с плавающей запятой.
Комплексные числа записываются в форме x+yj, где x – действительная часть числа, а y – мнимая: c = 1+2j
Мы можем преобразовывать значения из одного типа в другой с помощью таких функций, как int(), float(), str().
Строка представляет собой последовательность символов. Можно использовать одинарные или двойные кавычки для создания строки.
# Это комментарий
box1 = 15
box2 = 25
box3 = box1 + box2
print(box3)
s1 = 'Вам: '
s2 = ' лет'
name = input('Введите ваше имя: ')
age = input('Введите сколько вам лет: ')
name = 'Вас зовут: ' + name
age2 = s1 + age + s2
print(name)
print(age2)
b = 100 – int(age)
f = 100.5 – float(age)
print('Вам осталось жить где-то: ' + str(b))
print('А точнее где-то: ' + str(f))
40
Введите ваше имя: tsn
Введите сколько вам лет: 43
Вас зовут: tsn
Вам: 43 лет
Вам осталось жить где-то: 57
А точнее где-то: 57.5
Список использованных команд:
• print('Какой то текст') – печатает текст;
• print(a) – печатает значение переменной a (вместо a может быть любое имя переменной);
• a=input('Пояснение что надо ввести') – ожидает от пользователя ввода какого то значения и помещает его в переменную с типом строка (вместо a может быть любое имя переменной);
• int(a) – преобразовывает переменную типа строка в число (вместо a может быть любое имя переменной);
• str(i) – преобразовывает переменную числового типа в строку (вместо i может быть любое имя переменной).
2.1.1 Встроенные функции
Язык Python включает много уже определенных, т. е. встроенных в него, функций. Программист не видит их определений, они скрыты в "недрах" языка. Достаточно знать, что эти функции принимают и что возвращают, то есть их интерфейс.
Ряд встроенных функций, касающихся ввода-вывода и типов данных, мы уже использовали. Это print(), input(), int(), float(), str(). Рассмотрим другие встроенные функции:
print(ord('z')) # Код символа: 122
print(ord('ф')) # 1092
print(chr(87)) # Символ по коду: W
print(chr(10045)) # ✽
print(len('abc')) # Длина строки: 3
print(abs(-2.2)) # Модуль числа: 2.2
a = 10 / 3 # Вещественное деление: 3.3333333333333335
b = 10 % 3 # Остаток от целочисленного деления: 1
c = 10 // 3 # Деление нацело. Целая часть при делении: 3
print(a) # 3.3333333333333335
print(b) # 1
print(c) # 3
print(round(a, 2)) # Округление для двух знаков: 3.33
print(round(a)) # Округление до целого числа: 3
print("Number: %.2f" % a) # Number: 3.33
print(divmod(10, 3)) # Целая часть и остаток при целочисленном делении: (3, 1)
print(pow(2, 4)) # 2 в степени 4: 16
print(max(10, 12, 3)) # Макимальное число в списке: 12
print(min(10, 12, 3, 9)) # Манимальное число в списке: 3
print(sum((10, 12, 3, 10))) # Сумма чисел в списке: 35
2.1.2 Собственные функции
Иногда, набор каких-то повторяющихся команд нужно выполнять несколько раз. Такие блоки команд обычно выносят в отдельные кусочки программы. Именно из функций состоят внешние модули, которые можно подключать к программам. У функции могут быть входные параметры, называемые аргументами – это одна или несколько переменных, которые пишутся в скобках после имени функции. Также функция может возвращать одно или несколько значений с помощью команды return. Объявление функции начинается с ключевого слова def, далее следует имя функции, аргументы в скобках, и программный код отделённый четырьмя пробелами.
def pribavka(zarplata, avto):
k = 0
if (avto > 10):
k = round((avto – 10) * 0.02 * zarplata)
return k
a = int(input('Введите зарплату сотрудника: '))
b = int(input('Введите количество автомобилей проданных за месяц: '))
c = pribavka(a, b)
print('В этом месяце прибавка к зарплате составит: ' + str(c))
2.1.3 Функции математического модуля math
math.acos(X) – арккосинус X. В радианах
math.acosh(X) – вычисляет обратный гиперболический косинус
math.asin(X) – арксинус X. В радианах
math.asinh(X) – вычисляет обратный гиперболический синус
math.atan(X) – арктангенс X. В радианах
math.atan2(Y, X) – арктангенс Y/X. В радианах. С учетом четверти, в которой находится точка (X, Y)
math.atanh(X) – вычисляет обратный гиперболический тангенс
math.ceil(X) – округление до ближайшего большего числа
math.copysign(X, Y) – возвращает число, имеющее модуль такой же, как и у числа X, а знак – как у числа Y
math.cos(X) – косинус X (X указывается в радианах)
math.cosh(X) – вычисляет гиперболический косинус
math.degrees(X) – конвертирует радианы в градусы
math.e – e = 2,718281…
math.erf(X) – функция ошибок
math.erfc(X) – дополнительная функция ошибок (1 – math.erf(X))
math.exp(X) – eX
math.expm1(X) – eX – 1. При X → 0 точнее, чем math.exp(X)-1
math.fabs(X) – модуль X
math.factorial(X) – факториал числа X
math.floor(X) – округление вниз
math.fmod(X, Y) – остаток от деления X на Y
math.frexp(X) – возвращает мантиссу и экспоненту числа
math.fsum(последовательность) – сумма всех членов последовательности. Эквивалент встроенной функции sum(), но math.fsum() более точна для чисел с плавающей точкой
math.gamma(X) – гамма-функция X
math.hypot(X, Y) – вычисляет гипотенузу треугольника с катетами X и Y (math.sqrt(x * x + y * y))
math.isfinite(X) – является ли X числом
math.isinf(X) – является ли X бесконечностью
math.isnan(X) – является ли X NaN (Not a Number – не число)
math.ldexp(X, I) – X * 2i. Функция, обратная функции math.frexp()
math.lgamma(X) – натуральный логарифм гамма-функции X
math.log(X, [base]) – логарифм X по основанию base. Если base не указан, вычисляется натуральный логарифм
math.log10(X) – логарифм X по основанию 10
math.log1p(X) – натуральный логарифм (1 + X). При X → 0 точнее, чем math.log(1+X)
math.log2(X) – логарифм X по основанию 2
math.modf(X) – возвращает дробную и целую часть числа X. Оба числа имеют тот же знак, что и X
math.pi – pi = 3,1415926…
math.pow(X, Y) – XY
math.radians(X) – конвертирует градусы в радианы
math.sin(X) – синус X (X указывается в радианах)
math.sinh(X) – вычисляет гиперболический синус
math.sqrt(X) – квадратный корень из X
math.tan(X) – тангенс X (X указывается в радианах)
math.tanh(X) – вычисляет гиперболический тангенс
math.trunc(X) – усекает значение X до целого
import math
print(math.sin(22))
-0.008851309290403876
2.1.4 Функции и методы строк
S = 'str'; S = "str"; S = '''str'''; S = """str""" | Литералы строк |
S = "s\np\ta\nbbb" | Экранированные последовательности |
S = r"C:\temp\new" | Неформатированные строки (подавляют экранирование) |
S = b"byte" | Строка байтов |
S1 + S2 | Конкатенация (сложение строк) |
S1 * 3 | Повторение строки |
S[i] | Обращение по индексу |
S[i:j:step] | Извлечение среза |
len(S) | Длина строки |
S.find(str, [start],[end]) | Поиск подстроки в строке. Возвращает номер первого вхождения или -1 |
S.rfind(str, [start],[end]) | Поиск подстроки в строке. Возвращает номер последнего вхождения или -1 |
S.index(str, [start],[end]) | Поиск подстроки в строке. Возвращает номер первого вхождения или вызывает ValueError |
S.rindex(str, [start],[end]) | Поиск подстроки в строке. Возвращает номер последнего вхождения или вызывает ValueError |
S.replace(шаблон, замена) | Замена шаблона |
S.split(символ) | Разбиение строки по разделителю |
S.isdigit() | Состоит ли строка из цифр |
S.isalpha() | Состоит ли строка из букв |
S.isalnum() | Состоит ли строка из цифр или букв |
S.islower() | Состоит ли строка из символов в нижнем регистре |
S.isupper() | Состоит ли строка из символов в верхнем регистре |
S.isspace() | Состоит ли строка из неотображаемых символов (пробел, символ перевода страницы ('\f'), "новая строка" ('\n'), "перевод каретки" ('\r'), "горизонтальная табуляция" ('\t') и "вертикальная табуляция" ('\v')) |
S.istitle() | Начинаются ли слова в строке с заглавной буквы |
S.upper() | Преобразование строки к верхнему регистру |
S.lower() | Преобразование строки к нижнему регистру |
S.startswith(str) | Начинается ли строка S с шаблона str |
S.endswith(str) | Заканчивается ли строка S шаблоном str |
S.join(список) | Сборка строки из списка с разделителем S |
ord(символ) | Символ в его код ASCII |
chr(число) | Код ASCII в символ |
S.capitalize() | Переводит первый символ строки в верхний |
На этой странице вы можете прочитать онлайн книгу «Программирование на Python3 с PyQt5», автора Сергея Николаевича Талипова. Данная книга имеет возрастное ограничение 12+, относится к жанру «Программирование». Произведение затрагивает такие темы, как «самиздат», «язык python». Книга «Программирование на Python3 с PyQt5» была написана в 2020 и издана в 2021 году. Приятного чтения!
О проекте
О подписке