gpt4 book ai didi

Python:用字符串替换数值

转载 作者:行者123 更新时间:2023-12-01 01:20:01 27 4
gpt4 key购买 nike

我正在尝试用字符串替换用户输入的值以使输出更清晰

我认为 if 语句会有帮助,但我不确定它如何与我的预期输出结合起来

 def main() :
number = int(input("Enter your number: "))
base = int(input("Convert to\n" \
" Binary[2] - Octal[8] - Hexadecimal[16]: "))

if base == 2 :
"binary"
elif base == 8 :
"octal"
else:
"hexadecimal"

print("\n"+str(number) +" in "+ str(base) + " is: " + str(convert(number, 10, base)))


def convert(fromNum, fromBase, toBase) :
toNum = 0
power = 0

while fromNum > 0 :
toNum += fromBase ** power * (fromNum % toBase)
fromNum //= toBase
power += 1
return toNum

main()

我想要得到什么:如果用户输入 5 作为数字,2 作为转换。输出将是:“5的二进制是:101”

最佳答案

尝试

 def main() :
number = int(input("Enter your number: "))
base = int(input("Convert to\n" \
" Binary[2] - Octal[8] - Hexadecimal[16]: "))
base_string = "None"

if base == 2 :
base_string = "binary"
elif base == 8 :
base_string = "octal"
else:
base_string = "hexadecimal"

print("\n {} in {} is: {}".format(str(number), base_string, str(convert(number, 10, base))))


def convert(fromNum, fromBase, toBase) :
toNum = 0
power = 0

while fromNum > 0 :
toNum += fromBase ** power * (fromNum % toBase)
fromNum //= toBase
power += 1
return toNum

main()

您的问题是 if 语句中的“二进制”部分。它实际上对您的代码和输出都没有影响。您必须将文字表示形式(“二进制”,...)存储在某个变量(“base_string”)中。然后您可以在输出中使用此变量。

关于Python:用字符串替换数值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53918556/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com