Страница 2 из 4
Примечание: Python 3.4 имеет особенность – когда головная программа вызывает подпрограммы, то как обычно, подпрограмма забирает исходные данные, расчитывает результат и отдает его головной программы. Но вот мы повторно вызваем подпрограмму для расчета по изменившимся исходным данным – Python 3.4 игнорирует, то что данные изменились и выдает нам предыдущий результат. Чтобы не попасть на такую ошибку, приходится вести учет применения подпрограмм – при первом применении считаем как обычно,
import Krug # Подключили модуль расчета круглого сечения
при втором и последующем применении подпрограмму вызываем функцией:
from imp import reload
reload (Krug) # Вызываем на повторный расчет подпрограмму (Krug)…
Только так получаем верные результаты.. ( В других языках программирования я такого не встречал !! )..
Программа Ves_G.py…
# -*– coding: cp1251 -*-
# Программа расчета веса и других параметров
# объемных геометрических элементов..
# Результаты расчета элемента смотри в файле Rezul.txt
# ===============================================
import sys # Подключили основные библиотеки
import shutil # Подключили модуль копирования файлов
import math # Подключили математич модуль
import time # Подключили модуль времени
import datetime # Подключили модуль даты
Pii=math.pi # Вытащили число " Пи "
# ..... ..... ..... ..... .... ...... ...... ....... ...... ...... ...... .......
# time.strftime("%d.%m.%Y") # Работа с датой и временем
# a = datetime.datetime.today().strftime("%Y%m%d")
# print(a) # '20170405'
today = datetime.datetime.today()
# print( today.strftime("%m/%d/%Y") ) # '04/05/2017'
# print( today.strftime("%Y-%m-%d-%H.%M.%S") ) # 2017-04-05-00.18.00
Ddd=( today.strftime("%Y-%m-%d-//-%H.%M.%S") )
# Gsf = 461030/2725231222..
print(" ")
Dds=" "+Ddd+" Расчет веса элементов детали "
print(Dds)
# input( ) # Ожидание нажима Ентер
# ..... ..... ..... ..... .... ...... ...... ....... ...... ...... ...... .......
fv = open('Vn.txt', 'r') # Открыли файл для чтения
# Читаем записанные число часов в текстовом виде
ct=fv.read()
fv.close() # закрыли файл
# ..... ..... ..... ..... .... ...... ...... ....... ...... ...... ...... .......
uu=" "
# print (uu)
# print (uu)
u=" Забрали из файла число часов ( строкой ) = "+ct
# print (u)
xt=float(ct) # Принудительно в вещественное число
xtc=int(xt) # Целое число часов из файла
# print (uu)
# ..... ..... ..... ..... .... ...... ...... ....... ...... ...... ...... .......
x=time.time() # Нашли число секунд из системы компьютера
x=float(x) # Принудительно в вещественное число
xtk=int(x) # Преобразуем секунды к целому числу
xtmk=int(x/60) # Преобразуем минуты к целому числу
xtck=int(x/3600) # Преобразуем часы к целому числу
utck=str(xtck) # Преобразуем число часов в строку
xtdk=int(xtck/24) # Преобразуем дни к целому числу
utdk=str(xtdk) # Преобразуем число дней в строку
uk=" Забрали из системы компьютера число часов = "+utck
# print (uk)
# print (uu)
y=int(xtck-xtc) # Разность часов из компа и из файла
uy=str(y) # Преобразуем число в строку
u=" Разность в часах с временем из файла = "+uy
# print (u)
# print (uu)
t1="."
t2="Ф"
t3="в"
t4="о"
t5="р"
t6="П"
t7="С"
t8="г"
t9="а"
t10="."
t11="Г"
t12="м"
t13="и"
t14="л"
t15="т"
t16="с"
t17="2"
t18="0"
t19="т"
t20="1"
t21=" "
ufp=t6+t5+t4+t8+t5+t9+t12+t12+t13+t16+t15
ufa=t11+t9+t3+t5+t13+t14+t4+t3+t1+t21+t7+t1+t2+t1
ufg=t17+t18+t20+t17+t21+t8+t1
if y>10:
# Далее все строки пишем с отступом в четыре пробела от начала строки…
# ..... ..... ..... ..... .... ...... ...... ....... ...... ...... ...... .......
fv = open('Vn.txt', 'w') # Открыли файл для записи
# Записываем число часов в текстовом виде
fv.write(utck)
u=" Записали число часов в Файл "
print (u)
print (uu)
fv.close() # закрыли файл
x=xtk/14
y=int(xtk/14)
if y==x:
# Далее все строки пишем с отступом в восемь пробелов от начала строки…
print (uu)
print (" "+ufp)
print (uu)
print (" "+ufa)
print (uu)
print (" "+ufg)
print (uu)
print (" ==================== ")
print (uu)
print (uu)
input( ) # Ожидание нажима Ентер
# Далее все строки пишем с отступом в четыре пробела от начала строки…
print (uu)
# ..... ..... ..... ..... .... ...... ...... ....... ...... ...... ...... ....... # Далее все строки пишем без отступа…
u=" Работа с временем "
# print (u)
# print (uu)
# input( ) # Ожидание нажима Ентер
# ..... ..... ..... ..... .... ...... ...... ....... ...... ...... ...... .......
# ..... ..... ..... ..... .... ...... ...... ....... ...... ...... ...... .......
f = open('Rezult.txt', 'w') # Открыли файл для записи ( старое удалим )
# Записываем числа в текстовом виде
u=uu+"n" # Добавим код перевода строки
f.write(u)
u=Dds+"n" # Добавим код перевода строки
f.write(u)
u=utdk+"n" # Добавим код перевода строки
f.write(u) # Запишем – сколько дней прошло от даты Х
u=uu+"n" # Добавим код перевода строки
f.write(u)
u=" ==================================== "
u=u+"n" # Добавим код перевода строки
f.write(u) # записали в файл
f.close() # закрыли файл
# ..... ..... ..... .....
# ..... ..... ..... .....
print (uu)
print (uu)
print (uu)
u=" РАСЧЕТ ВЕСА ДЕТАЛИ "+"n"
print (u)
print (uu)
u=" Программа расчитывает вес элементарного фрагмента детали "+"n"
print (u)
u=" выводит вес фрагмента на экран, затем суммирует с весом "+"n"
print (u)
u=" уже расчитанных фрагментов. Если фрагмент представляет "+"n"
print (u)
u=" собой полость ( пустоту ), то его длина вводится со знаком "+"n"
print (u)
u=" минус – вес пустого фрагмента будет вычитаться из суммарного "+"n"
print (u)
u=" веса детали. "+"n"
print (u)
u=" Одновременно с расчетом веса фрагмента – программа "+"n"
print (u)
u=" расчитывает геометрические характеристики сечения фрагмента "+"n"
print (u)
u=" необходимые для расчетов на прочность и других расчетов "+"n"
print (u)
u=" На экран эти результаты не выводятся, а записываются "+"n"
print (u)
u=" в файл Rezult.txt – который можно посмотреть после "+"n"
print (u)
u=" окончания расчета веса детали. "+"n"
Цитата успешно добавлена в Мои цитаты.
Желаете поделиться с друзьями?