Форум программистов, компьютерный форум, киберфорум
Python
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.64/11: Рейтинг темы: голосов - 11, средняя оценка - 4.64
0 / 0 / 1
Регистрация: 29.03.2017
Сообщений: 11

Запуск Python кода под Windows

23.05.2017, 18:34. Показов 2082. Ответов 13
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Есть вот такая вот програмка:
Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
import math
from  decimal import Decimal
 
import matplotlib.pyplot as plt
 
def f (d):
    return Decimal(str(d))
 
 
 
def constTicks(array):
    array = array[1:]
    for i in range(1,len(array)):
        if abs(array[i-1] - array[i])>1:
            ma = int(round(max(array)))
            mi = int(round(min(array)))
            step = (ma-mi)//6
            ma += step
            return [int(i) for i in range(mi, ma+1, step)]
    x = int(round(array[1]))
    return [x-4, x, x+4]
 
 
 
def defirinV(coordinate, time, func):
    t = 0.000001
    coordinateDif = [[coordinate[0], eval(func)]]
    for i in range(1, len(coordinate)):
        t = time[i]+0.000001
        coordinateDif.append([coordinate[i], eval(func)])
    result = []
    for i in coordinateDif:
        result.append((i[1]-i[0])/0.000001)
    return result
 
def AAA(coordinate, time, func):
    t = time[0]
    coordinateDif = [[coordinate[0], eval(func)]]
    for i in range(1, len(coordinate)):
        t = time[i]+0.000001
        coordinateDif.append([coordinate[i], eval(func)])
    result = []
    for i in coordinateDif:
        result.append((i[1]-i[0])/0.000001)
    return result
 
def Crutch(func):
    last = func.find("f(t**2)")
    if last < 0: return 0
    first = last-3
 
    answer = 0
    k = 0
    while func[first] in [str(i) for i in range(10)]:
        answer = 10**k*func[first]+answer
        k += 1
        first -= 1
 
    if first -2 >= 0:
        if func[first-2] == "-": return -answer*2
 
    return answer*2
 
 
def defirinA(coordinate, time, func):
    speed1 = AAA(coordinate, time, func)
    speed2 = AAA([eval(func) for t in [i+0.000005 for i in time]], [i+0.000005 for i in time], func)
    print(speed1)
    print(speed2)
    result = []
    for i in range(len(speed1)):
        result.append((speed2[i]-speed1[i])/0.00001*2)
    result[0] = Crutch(func)
    return result
 
def parser(inp):
    row = ["cos", "sin","log","ln", "e^","^"]
    pretty = ["math.cos","math.sin","math.log", "math.log", "math.exp","**"]
    for i in range(len(row)):
        if row[i] in inp:
            print(i)
            inp = inp.replace(row[i], pretty[i])
 
    return inp
 
 
print("Введите уравнение S(t): ")
func = input()
print("Укажите кол-во секунд(целые числа):")
t1 = int(input())
func = parser(func)
print(func)
n =256*t1+1
a0 = 0
 
time = [i/128 for i in range(0,n) if ("log" not in func and "ln" not in func) or (i!=0)]
coordinate = [eval(func) for t in time]
movement = [i-coordinate[0] for i in coordinate]
speed = defirinV(coordinate, time, func)
axilir = defirinA(coordinate, time, func)
k = 0
if "log" in func or "ln" in func:
    k = 1
 
#print ("\n\n\n\ncoordinate  ", [str(i).ljust(20," ") for i in coordinate])
#print ("movement    ", [str(i).ljust(20," ") for i in movement])
#print ("time        ", [str(i).ljust(20," ") for i in time])
#print ("speed       ", [str(i).ljust(20," ") for i in speed])
#print ("axilir      ", [str(i).ljust(20," ") for i in axilir])
 
# sub 1
plt.subplot(221)
 
plt.plot(time[1+k:], coordinate[1+k:])
 
plt.grid(True)
plt.title(r'$Координаты\ от\ времени$')
plt.ylabel(u'Координата [м]', fontsize=12)
 
# sub 2
plt.subplot(222)
 
plt.plot(time[1+k:], movement[1+k:])
 
plt.grid(True)
plt.title(r'$Перемещения\ от\ времени$')
plt.ylabel(u'Перемещение [м]', fontsize=12)
 
 
# sub 3
plt.subplot(223)
plt.plot(time[k:], speed[k:])
 
plt.grid(True)
plt.title(r'$Скорости\ от\ времени$')
plt.xlabel(u'Время [c]', fontsize=12)
plt.ylabel(u'Скорости [м/c]', fontsize=12)
plt.yticks(constTicks(speed))
 
# sub 4
plt.subplot(224)
 
plt.plot(time[k+1:], axilir[k+1:])
 
plt.grid(True)
plt.title(r'$Полного\ ускорения\ от\ времени$')
plt.xlabel(u'Время [c]', fontsize=12)
plt.ylabel(u'Полного ускорения [м/c^2]', fontsize=12)
plt.yticks(constTicks(axilir))
 
 
plt.show()
 
#fout = open("calc.txt", "w")
#fout.write("N".ljust(5, " ")+"".join([i.ljust(15, " ") for i in ["coordinate", "movement", "time", "speed", "axilir"]])+"\n")
#for i in range(len(coordinate)):
#    fout.write(str(i+1).ljust(5, " ")+"".join([str(round(i, 4)).ljust(15, " ") for i in [coordinate[i], movement[i], time[i], speed[i], axilir[i]]])+"\n")
#fout.close()
Надо что бы препод мог эту програмку запустить у себя на винде с минимум кликов (Т.е. максимум что он сделает - постаивть интерпритатор Python), как это можно это реализовать?
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
23.05.2017, 18:34
Ответы с готовыми решениями:

Запуск python-кода другой программы
Добрый день! Я слышал, что в Python3 можно каким-то образом запускать на исполнение код другой python-программы. Код должен именно...

Запуск скрипта написанного на python на windows, где не установлен python
Не запускается скрипт на Windows, где не установлен python. Команда в коде на выполнение написана так: def Adminnewpriglash(): ...

Адаптация кода на Python 3.5 под 2.7
Есть необходимость переписать код с версии 3.5 под версию 2.7 для размещения на хосте. Где-то есть материал, чтобы комплексно было...

13
Эксперт Python
 Аватар для dondublon
4653 / 2073 / 366
Регистрация: 17.03.2012
Сообщений: 10,183
Записей в блоге: 6
23.05.2017, 18:43
Можно батник, можно ярлык.
0
0 / 0 / 1
Регистрация: 29.03.2017
Сообщений: 11
23.05.2017, 18:52  [ТС]
Батник для запуска? А что тогда делать с библиотеками matplolib и math, мне ещё понадобится PyQt?
0
Эксперт Python
 Аватар для dondublon
4653 / 2073 / 366
Регистрация: 17.03.2012
Сообщений: 10,183
Записей в блоге: 6
23.05.2017, 20:54
kitchip, я думал, речь идёт именно об запуске конкретного скрипта.
Так - речь скорее об установке Питона с пакетами.

Можно взять готовую большую сборку. WinPython/Anaconda. math входит в стандартный комплект.

Добавлено через 2 минуты
Ну и батник тоже можно
Сначала setup питона, потом pip install matplotlib. Можно также whl с собой взять.
0
0 / 0 / 1
Регистрация: 29.03.2017
Сообщений: 11
23.05.2017, 21:17  [ТС]
dondublon,
Будет ли работать если, сетапнуть питон в папку(Которую я скину преподавателю) вместе с библиотеками и создать скрипт через батник, который бы запускал этот питон файл(прогу выше) из под питона в папке? Как в virtualenv.
0
in code we trust
 Аватар для __py__
133 / 162 / 12
Регистрация: 29.02.2016
Сообщений: 885
23.05.2017, 21:41
Всё можно запустить батником но зачем!
0
0 / 0 / 1
Регистрация: 29.03.2017
Сообщений: 11
23.05.2017, 21:43  [ТС]
dondublon,
__py__,
давайте ещё раз.
Есть проблема такого рода, преподаватель по физике с высокой долей вероятностью не сможет мне засчитать задачу, если он не сможет запустить мою программу у себя на компьютере без особых проблем, так как он оценивеат её с точки зрения пользователя. Установить Python он готов. Ставить дополнительные библиотеки - сомнительное удовольствие.
Поэтому я хочу найти способ, как я смогу сделать так, что бы преподаватель мог спокойно запустить мою прогу, установив только Python3.



----------------------
Ой, а чего это в бан отправили dondublon, он же мне пытался помочь...
0
in code we trust
 Аватар для __py__
133 / 162 / 12
Регистрация: 29.02.2016
Сообщений: 885
23.05.2017, 21:50

Сколько ни просматривал проекты на опенсурс и ни разу не встречал, чтобы взял код скачал и заработало без импорта.
0
0 / 0 / 1
Регистрация: 29.03.2017
Сообщений: 11
23.05.2017, 21:52  [ТС]
__py__, ну, с преподом тяжело спорить. Особенно по физике, когда экзамен своими силами с трудом закроешь )
0
in code we trust
 Аватар для __py__
133 / 162 / 12
Регистрация: 29.02.2016
Сообщений: 885
23.05.2017, 21:53
Получается там все дураки а препод самый умный?
0
0 / 0 / 1
Регистрация: 29.03.2017
Сообщений: 11
23.05.2017, 21:58  [ТС]
__py__, боюсь, вы не так поняли, он совсем не дурак. Просто он предложил сделать рабочий проект по физике, который теоретически мог бы использовать пользователь, ставить Python3 +3хбиблиотеки - не имеет смысла, когда под рукой excel. Этим проектом можно было бы закрыть экзамен. Не можешь? - на экзамене тебе очень рады )
0
in code we trust
 Аватар для __py__
133 / 162 / 12
Регистрация: 29.02.2016
Сообщений: 885
23.05.2017, 22:00
можно сделать батник с запуском импорта библиотек но гарантия что у него установится на винде с 1-й попытки равен 1 шансу из 1000! Точнее вообще равен 0 так как без запуска с правами админа вообще скорее всего не прокатит.
1
0 / 0 / 1
Регистрация: 29.03.2017
Сообщений: 11
23.05.2017, 22:03  [ТС]
__py__, грустно. Если какое-нибудь решение не найдётся, то попытаюсь договориться )
0
 Аватар для pashtet-kun
135 / 120 / 37
Регистрация: 30.09.2012
Сообщений: 400
24.05.2017, 00:54
можно попробовать зафризить в экзешник еще
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
24.05.2017, 00:54
Помогаю со студенческими работами здесь

Запуск PHP-скрипта из C++ кода под Windows
Доброго времени суток. Необходимость в таком извращении вижу для выполнения такой задачи: есть код на С++, который для своей работы...

Запуск кода MASM под Windows 7 x64
Понимаю, что эту тему поднимали уже сто раз, но я только начал изучать Ассемблер и вопросов у меня много. Работаю я на Windows 7 x64 и...

Попытка выполнения управляемого кода под блокировкой OS Loader. Запуск управляемого кода в пределах функции DllMain или
Всем привет! У меня есть проект, подключаемый к базе данных Access. Есть отчет, созданный через Crystal Reports и вывод его в...

Запуск программного кода Python из командной строки
Возникла необходимость запустить простой скрипт Python непосредственно из командной строки используя команду start Как это можно сделать?...

Запуск кода из под другой ОСи
Интересен такой вопрос. Можно ли из под mac os обратиться к win 7 используя PowerShell? То есть, задача использовать повершельные...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
14
Ответ Создать тему
Новые блоги и статьи
Krabik - рыболовный бот для WoW 3.3.5a
AmbA 21.03.2026
без регистрации и смс. Это не торговля, приложение не содержит рекламы. Выполняет свою непосредственную задачу - автоматизацию рыбалки в WoW - и ничего более. Однако если админы будут против -. . .
Программный отбор значения справочника
Maks 21.03.2026
Процедура ВодителиНачалоВыбора(Элемент, ДанныеВыбора, ВыборДобавлением, СтандартнаяОбработка) / / Отключаем стандартную обработку (стандартное открытие формы выбора без фильтров) . . .
Переходник USB-CAN-GPIO
Eddy_Em 20.03.2026
Достаточно давно на работе возникла необходимость в переходнике CAN-USB с гальваноразвязкой, оный и был разработан. Однако, все меня терзала совесть, что аж 48-ногий МК используется так тупо: просто. . .
Оттенки серого
Argus19 18.03.2026
Оттенки серого Нашёл в интернете 3 прекрасных модуля: Модуль класса открытия диалога открытия/ сохранения файла на Win32 API; Модуль класса быстрого перекодирования цветного изображения в оттенки. . .
SDL3 для Desktop (MinGW): Рисуем цветные прямоугольники с помощью рисовальщика SDL3 на Си и C++
8Observer8 17.03.2026
Содержание блога Финальные проекты на Си и на C++: finish-rectangles-sdl3-c. zip finish-rectangles-sdl3-cpp. zip
Символические и жёсткие ссылки в Linux.
algri14 15.03.2026
Существует два типа ссылок — символические и жёсткие. Ссылка в Linux — это запись в каталоге, которая может указывать либо на inode «файла-ИСТОЧНИКА», тогда это будет «жёсткая ссылка» (hard link),. . .
[Owen Logic] Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора
ФедосеевПавел 14.03.2026
Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора ВВЕДЕНИЕ Выполняя задание на управление насосной группой заполнения резервуара,. . .
делаю науч статью по влиянию грибов на сукцессию
anaschu 13.03.2026
прикрепляю статью
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru