PYTHON Fantasy Adventure 18 Haz un pequeño proyecto

PYTHON Fantasy Adventure 18 Haz un pequeño proyecto

Todos los días, solo se necesitan diez minutos para que todos coman al mediodía. Si tienes algo que hacer, ¡échale un vistazo y domina un idioma fácilmente! Trabajemos juntos duro.

La aventura de fantasía de Xiaopengpeng llegó a Las Vegas, EE. UU., ¡Y pasó mucho tiempo para publicar preguntas sobre mi hermano! ¡Quería irme a casa temprano para descansar! Inesperadamente, ¡conocí una carta de una mujer misteriosa! Conoce el mapa de la siguiente aldea. Pero debido a que su negocio familiar es demasiado grande, no puede estar ocupada sola. ¡Así que nos necesita para ayudarla a realizar una tarea de gestión de proyectos! Xiaopengpeng no quiso ayudar, ¡pero apareció!

Este favor debe ser ayudado ~ ¡Para la diosa, Xiaopengpeng está obligado a hacerlo! ¡Incluso si se acerca a la espada, está dispuesto a descender por el mar de fuego!
Diosa, recuerda firmar y tomarte una foto conmigo ~
Si hay una nueva película, recuerda decírmelo ~

¡La diosa está aquí!

TAREA: Calculadora de carga de trabajo

¿No sé lo que suele hacer cuando se encuentra con un problema? ¡Una cosa es muy importante! ¡Solo aprenda a verificar la información! ¡Porque no podemos recordar demasiados puntos de conocimiento! ¡Solo puedes confiar en ti mismo para seguir tomando notas y acumular!

Requisito 1: ¿Cuál es el tiempo de cálculo
? ¡No tengas miedo! ¡El director del proyecto te dirá los requisitos! En realidad, es muy simple, ¡solo la fórmula de división!

1 proyecto, una persona necesita 80 horas para completar, 10 horas de trabajo por día,
1,5 proyectos (120 horas) en 8 días . => ¡Dos personas! => Tarda 60 horas

Resultado: Requisito de tiempo de trabajo
2: Cálculo de mano de obra

0,5 proyectos (40 horas)! => ¡Completar en 20 horas! => ¡Necesito 2 personas!
Resultado: número de personas que trabajan

¡Lo anterior es nuestra tarea!
Cuando se encuentre con un problema de este tipo, el primer paso es describirlo brevemente.

# 注:size代表项目大小,number代表人数,time代表工时数量
choice = int(input("请输入工作计时器的功能:"))
# 1计算时间,0计算人力
if choice == 1 :
    size = 1.5
    number = 2
    time = size * 80 / number
    print('项目大小为%.1f个标准项目,使用%d个人力完成,则需要工时数量为%d:' % (size, number,time))
else:
    # 人力计算
    size = 0.5
    time = 20.0
    number = size * 80 /time
    print('项目大小为%.1f个标准项目,如果需要在%.1f个工时完成,则需要人力数量为%d:' % (size, time, number))

resultado de la operación:

请输入工作计时器的功能:0 
项目大小为0.5个标准项目,如果需要在20.0个工时完成,则需要人力数量为2

¡Esa es la función! Pero nuestra versión actual no puede hacer nada, ¡todavía necesitamos actualizarnos constantemente! ¡Muchos detalles requieren una consideración constante por parte de todos! ¡Lo mejor es probarlo usted mismo! ¡El siguiente es el comienzo oficial! ¡Ahora es el tiempo real para que un programador actúe! No importa lo bueno que sea, ¡es inútil! La profundidad de la base determina nuestro límite superior. Al igual que KOBE, ¡nunca se sabe cuánto ha trabajado! ¡Para tener éxito, debes pagar sudor y lágrimas!

Solo usa Version1

No hay mucho que decir, miren el código primero, en el mundo de PYTHON, ¡satisfagan su fantasía juntos!
¡Usa lo que aprendiste en la sección anterior! ¡Crea tu propia función!

choice = int(input("请输入工作计时器的功能:"))
def computer_time(choice,size, number):
    
    # 1计算时间,0计算人力
    if choice == 1 :
    #size = 1.5
    #number = 2
        time = size * 80 / number
        print('项目大小为%.1f个标准项目,使用%d个人力完成,则需要工时数量为%d:' % (size, number,time))
#else:
def computer_number(choice,size,time):
    # 人力计算
    if choice == 2:
    #size = 0.5
    #time = 20.0
    	number = size * 80 /time
    	print('项目大小为%.1f个标准项目,如果需要在%.1f个工时完成,则需要人力数量为%d:' % (size, time, number))

computer_time(choice,1.5,2)
computer_number(choice,0.5,20)

resultado de la operación

请输入工作计时器的功能:2
项目大小为0.5个标准项目,如果需要在20.0个工时完成,则需要人力数量为2

% f significa que la cadena formateada es de tipo coma flotante y% .1f significa que la cadena formateada es de tipo coma flotante, con 1 lugar decimal.

Mejora de la versión Version2

No hay mucho que decir, miren el código primero, en el mundo de PYTHON, ¡satisfagan su fantasía juntos!
De hecho, ¡el código anterior todavía tiene algunos problemas! Tal vez podamos agregar un punto decimal en el tiempo, pero ¿qué pasa con las personas? 1.2 ¿Cuántas personas son individuos? ¡Así que ahora tenemos que resolver este problema!

¡Lo que necesita atención es la función de techo! Está redondeado ~


# 注:size代表项目大小,number代表人数,time代表工时数量
import math

choice = int(input("请输入工作的类型:"))
def computer_time(choice , size, number):
    global time
    # 工时计算
    if choice == 1 :
        # size = 1.5
        # number = 2
        time = math.ceil(size * 80 / number)
        print('项目大小为%.1f个标准项目,使用%d个人力完成,则需要工时数量为%d:' % (size, number,time))
def computer_number(choice , size ,time):
    global number 
    if choice == 2 :
        # 人力计算
        #size = 0.5
        #time = 20.0
        number = math.ceil(size * 80 /time)
        print('项目大小为%.1f个标准项目,如果需要在%.1f个工时完成,则需要人力数量为%d:' % (size, time, number))
    
computer_time(choice,1.5,2)
computer_number(choice,2.5,20)

resultado de la operación:

请输入工作的类型:1
项目大小为1.5个标准项目,使用2个人力完成,则需要工时数量为60

¿Está todo bien? ¡Versión optimizada! ¡A continuación esperamos que el código sea más sencillo!

import math

# 为函数设置了三个参数,并都带有默认参数
def computer(size=1,number=None,time=None):
    # 人力计算:如果参数中填了时间,没填人数,就计算人力
    if (number == None) and (time != None):
        number = math.ceil(size * 80 / time)
        print('项目大小为%.1f个标准项目,如果需要在%.1f个工时完成,则需要人力数量为:%d人' %(size,time,number))  
    # 工时计算:如果参数中填了人数,没填时间,就计算工时
    elif (number != None) and (time == None):
        time = size * 80 / number
        print('项目大小为%.1f个标准项目,使用%d个人力完成,则需要工时数量为:%.1f个' %(size,number,time))  

# 调用函数的时候,传递两个参数,会自动计算出第三个参数
computer(size=1.5,number=2)
computer(size=0.5,time=20.0)

¡Míralo más de cerca! ¿No es esto mucho mejor?
resultado de la operación:

项目大小为1.5个标准项目,使用2个人力完成,则需要工时数量为:60.0个
项目大小为0.5个标准项目,如果需要在20.0个工时完成,则需要人力数量为:2

Version3 éxito o fracaso de una sola vez

Después de los continuos esfuerzos anteriores, ¿nuestro proyecto ya está bien? ¡Por supuesto que no! Las cosas que prometen a la diosa deben hacerse al extremo, incluso si es un hermano, ¡no está mal para el dinero en los últimos años!
No hay mucho que decir, miren el código primero, en el mundo de PYTHON, ¡satisfagan su fantasía juntos!

# 请大家一定要认真看一下!先将下面的代码改造成两个子函数和一个主函数,并调用主函数。

import math

# 第一步先定义一下采集信息的函数
def myinput():
    choice = input('请选择计算类型:(1-工时计算,2-人力计算)')
    if choice == '1':
        size   = float(input('请输入项目大小:(1代表标准大小,请输入小数)'))
        number = int(input('请输入人力数量:(请输入整数)'))
        time = None
        return size,number,time
        # 这里返回的数据是一个元组
    if choice == '2':
        size = float(input('请输入项目大小:(1代表标准大小,请输入小数)'))
        number = None
        time = float(input('请输入工时数量:(请输入小数)'))
        return size,number,time
        # 这里返回的是一个元组

# 完成计算的函数
def estimated(my_input):
    # 把元组中的数据取出来
    size   = my_input[0]
    number = my_input[1]
    time   = my_input[2]
    # 人力计算
    if (number == None) and (time != None):
        number = math.ceil(size * 80 / time)
        print('项目大小为%.1f个标准项目,如果需要在%.1f个工时完成,则需要人力数量为:%d人' %(size,time,number)) 
    # 工时计算
    elif (number != None) and (time == None):
        time = size * 80 / number
        print('项目大小为%.1f个标准项目,使用%d个人力完成,则需要工时数量为:%.1f个' %(size,number,time))  

# 主函数
def main():
    my_input = myinput() # 开辟一个地址空间!
    estimated(my_input)  # 将my_input当成参数

# 调用主函数
main()

resultado de la operación

请选择计算类型:(1-工时计算,2-人力计算)1 
请输入项目大小:(1代表标准大小,请输入小数)3.1 
请输入人力数量:(请输入整数)5 
项目大小为3.1个标准项目,使用5个人力完成,则需要工时数量为:49.6

En este punto, ¿el código se ha vuelto más alto? ¡Pero aún no ha terminado! ¡Nuestra misión no ha terminado! La diosa todavía no está satisfecha, ¡así que continúa mejorando! Piense en el diseño del juego, ¿nuestro código también debería aprender de él? ¡Siempre debe haber un principio y un final! ¡Este es el principio y el final!
No hay mucho que decir, miren el código primero, en el mundo de PYTHON, ¡satisfagan su fantasía juntos!

import math

# 变量key代表循环运行程序的开关,这就是我们新加的设计!
key = 1

# 采集信息的函数
def myinput():
    choice = input('请选择计算类型:(1-工时计算,2-人力计算)')
    if choice == '1':
        size = float(input('请输入项目大小:(1代表标准大小,请输入小数)'))
        number = int(input('请输入人力数量:(请输入整数)'))
        time = None
        return size,number,time
        # 这里返回的数据是一个元组
    if choice == '2':
        size = float(input('请输入项目大小:(1代表标准大小,请输入小数)'))
        number = None
        time = float(input('请输入工时数量:(请输入小数)'))
        return size,number,time
        # 这里返回的是一个元组

# 完成计算的函数
def estimated(my_input):
    # 把元组中的数据取出来
    size = my_input[0]
    number = my_input[1]
    time = my_input[2]
    # 人力计算
    if (number == None) and (time != None):
        number = math.ceil(size * 80 / time)
        print('项目大小为%.1f个标准项目,如果需要在%.1f个工时完成,则需要人力数量为:%d人' %(size,time,number)) 
    # 工时计算
    elif (number != None) and (time == None):
        time = size * 80 / number
        print('项目大小为%.1f个标准项目,使用%d个人力完成,则需要工时数量为:%.1f个' %(size,number,time))  

# 询问是否继续的函数,这就是设计的创新点
def again():
    # 声明全局变量key,以便修改该变量
    global key
    a = input('是否继续计算?继续请输入y,输入其他键将结束程序。')
    if a != 'y':
        # 如果用户不输入'y',则把key赋值为0
        key = 0  

# 主函数
def main():
    print('女神,欢迎使用工作量计算小程序!')
    while key == 1:
        my_input = myinput()
        estimated(my_input)
        again()
    print('感谢使用工作量计算小程序!')

main() # 开辟地址空间

¡Me pregunto si habrás notado algún detalle! Por ejemplo, def main, def computer, def my_input y def main contienen funciones como computer y my_input. ¿Por qué sigue habiendo main () al final? ¿Es necesario abrir el espacio de direcciones? ¡Esta pregunta queda para que todos la piensen! ¡Resuelve el problema con el problema!
¡Hay respuestas detalladas en este artículo a continuación!

https://www.zhihu.com/question/49136398 

De hecho, main () es el punto de entrada de un programa.

resultado de la operación


欢迎使用工作量计算小程序!
请选择计算类型:(1-工时计算,2-人力计算)2
请输入项目大小:(1代表标准大小,请输入小数)9.0
请输入工时数量:(请输入小数)8
项目大小为9.0个标准项目,如果需要在8.0个工时完成,则需要人力数量为:90人
是否继续计算?继续请输入y,输入其他键将结束程序。n
感谢使用工作量计算小程序!

El jefe viene

¡El contenido de esta sección es bastante complicado! ¡La razón para agregar algunas imágenes animadas es hacer que todos no se sientan aburridos y aburridos! ¡El aprendizaje de idiomas todavía depende de tu propia pasión! Si lo considera un buen amigo, ¡todos los problemas serán muy simples! ¡El conocimiento no se trata de aprender demasiado, sino de ayudarnos a aprender un tipo de pensamiento! ¡Una forma de resolver el problema! ¡Para la serie PYTHON, siempre insistiré en la originalidad y sin cargo! ¡Las cosas buenas deben compartirse con todos! Al mismo tiempo, la originalidad no es fácil y necesita el apoyo y el aliento de todos. ¡gracias a todos! ¡BOSS se actualizará esta vez! ¡Deja un suspenso para todos! ¡Nos vemos en el próximo número!

Explique solemnemente: solo hablamos del método de aprendizaje de PYTHON, no de cómo perseguir a la diosa. Si hay una buena manera, ¡puedo escribir un artículo para contárselo a todos!
¡El próximo número será más emocionante! ¡Nosotros no decimos adiós!

¡Bienvenidos a todos a leer mi "La debilidad de la naturaleza humana" para darles una sensación diferente!

Supongo que te gusta

Origin blog.csdn.net/weixin_46259642/article/details/112434736
Recomendado
Clasificación