所以,在MITx Python课程中有一个作业让我很不舒服

2024-09-29 21:38:02 发布

您现在位置:Python中文网/ 问答频道 /正文

我很抱歉没有时间。我对这整件事很陌生。好像,才做了四天新的。在

清嗓子总之,我正在处理MITx的“6.00.1x使用Python的计算机科学和编程简介”课程中的作业“练习:vara varb”。这给我带来了不少麻烦。在

Assume that two variables, varA and varB, are assigned values, either numbers or strings.

Write a piece of Python code that evaluates varA and varB, and then prints out one of the following messages:

"string involved" if either varA or varB are strings

"bigger" if varA is larger than varB

"equal" if varA is equal to varB

"smaller" if varA is smaller than varB


Tags: orandofifthatis时间equal
2条回答

这里有一个解决方案:

varA = input("A : ")
varB = input("B : ")
try: # to avoid errors when converting strings that have non-digits to numbers
  varA = float(varA)
  varB = float(varB)
  if varA > varB:
    print("bigger")
  elif varA < varB:
    print("smaller")
  else:
    print("equal")
except ValueError: # that means that python couldn't convert one of the variables to a number, which means it's a string
  print("string involved")

用值替换A和B。在

A = Value
B = Value

try:
    if A < B:
        print('smaller')
    elif A > B:
        print('bigger')
    elif A == B:
        print('equal')
except(TypeError,ValueError):
    print('string involved')

如果要指定随机值,可以使用:

^{pr2}$

你也可以让它无限重复。在

import random
import string
import time

def find_value():
    num = random.randrange(1,3)
    if num == 1:
        characters = list(string.ascii_lowercase)
        x = ''
        for num3 in range(6): # six letters
            num2 = random.randrange(0,26)
            x = x + characters[num2]
            return x
    elif num == 2:
        x = random.randrange(0,101) #between 0 through 101, never 0 and 101
        return x

while True:
    time.sleep(1)
    A = find_value()
    B = find_value()

    try:
        if A < B:
            print('smaller')
        elif A > B:
            print('bigger')
        elif A == B:
            print('equal')
    except(TypeError,ValueError):
        print('string involved')

相关问题 更多 >

    热门问题