python - 该函数未按预期提供输出
问题描述
我通过以下方式定义了一个函数:
输入:两个数字 l,k
输出:以 l 为底的数字 k
代码:-
def base(k,l):
result=''
while k!=0:
remainder = k%l
k=k//l
result= result + str(remainder)
return result
当数字可以被底的任何幂整除时,就会出现问题。
例如:- 如果 base = 2 且 k = 2,则输出为 01 而不是 10。同样的情况也发生在其他一些数字中
解决方案
您不是在问效率,而是在问如何让它发挥作用。
使用快速测试
def base(k,l):
result=''
while k!=0:
remainder = k%l
k=k//l
result= str(remainder) + result
return result
作品。
推荐阅读
- windows - 如何从 CMD 执行添加到 WSL2 内的 $PATH 的二进制文件?
- python - 比较python中的两个列表元素
- r - 当字符串带有空格时,agrep 不起作用,用于字符串匹配
- sql - 每个组的本地最大值的 SQL 排序结果
- android - java.lang.NullPointerException:尝试插入到 Telephony.Sms.Conversations 时,Uri 不能为空
- mysql - 如何在 Django 模型中声明 JSON 字段?
- azure - 部署到存储帐户的静态网站的正确 scm?
- c++ - 为生成的代码扩展 C++ 模板参数类型名称
- python - 有没有办法让这个反向阶乘代码更有效地运行
- sql-server - 直到使用 PlatformTransactionManager 完成事务后才提交插入