python - Python没有运行我的程序没有任何错误
问题描述
我需要创建一个程序来转换 Base 2 中的 Base 10 数字。
接下来是代码,即使没有错误也无法按预期运行:
E = input('Please enter a number')
Eint= int(E)
for N in range(100,0):
while 2**N > Eint:
N = N-1
print(0)
if B**N <= Eint:
Eint = Eint - 2**N
print(1)
Print('finished')
当我运行它时,它会询问我的号码,但仅此而已,谢谢你们的帮助。
解决方案
从快速检查来看range(100,0)
,B
、 和Print()
是这里的三个罪魁祸首!如果你想传递从 0 到 99 的数字,那么range(100)
这就是你所需要的。现在,B是什么?打印应小写:print
.
在我们修复了这些语法错误之后,让我们尝试重新访问该程序并了解它应该做什么。玩得开心 :-)
编辑以修复问题中的代码:
E = input('Please enter a number: ')
Eint = int(E)
for N in range(8,-1,-1):
if 2**N > Eint:
print(0, end='')
else:
Eint = Eint - 2**N
print(1, end='')
print()
print('finished')
请注意,Python 是一种使用缩进来表示代码块的语言。此代码会将十进制转换为二进制。现在,请注意,从 8 开始的范围为您提供了有关代码可以转换的数字上限的提示。因此,必须在第二条语句之后添加 if 条件,以确保我们不会尝试转换太大的数字。享受!
推荐阅读
- javascript - 重定向相同组件时不调用 Vuejs 钩子
- c# - WinAppDriver 计算器示例中的异常
- acumatica - 将套件项目添加到销售订单仅添加最后一行
- python - 为什么我的进度条会打印,完成,然后打印并再次完成?
- sql - 红移无法识别的节点类型 407
- android - 在 EditText 视图中使用 BACKSPACE 或 SHIFT 按钮时应用程序关闭
- python - 为什么我的代码中出现字符串浮动错误?
- django - Django office365
- python-3.x - 在 scikit learn 管道之间传递参数
- python - Flask - 如何重用 URL 参数替换功能?