鱼C论坛

 找回密码
 立即注册
查看: 1523|回复: 5

[已解决]关于课后作业17动动手:十进制转换为二进制

[复制链接]
发表于 2017-12-4 23:33:06 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
题目:编写一个将十进制转换为二进制的函数,要求采用“除2取余”(脑补链接)的方式,结果与调用bin()一样返回字符串形式

我是这样做的(为了调试我改成下面这样):
x = int(input())
z=[]

while x:
   y = x%2
   z.append(y)

   x = x//2
   b = z.reverse()

print(b)

为什么打印出来是None?
求大神解析
最佳答案
2017-12-5 00:00:04
楼主大人,您好:
因为list的reverse不返回任何东西,它只是将list自身的元素逆序
所以你的b = z.reverse()并没有返回任何东西,所以他是一个None,但是您的这个操作已经使得z中的元素逆序了
  1. x = int(input())
  2. z = []

  3. while x:
  4.     y = x % 2
  5.     z.append(y)
  6.     x = x//2
  7. z.reverse()

  8. print(z)

  9. for i in range(len(z)):
  10.     print(z[i], end='')

复制代码

小的稍微改了一下代码,楼主大人请看
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2017-12-5 00:00:04 | 显示全部楼层    本楼为最佳答案   
楼主大人,您好:
因为list的reverse不返回任何东西,它只是将list自身的元素逆序
所以你的b = z.reverse()并没有返回任何东西,所以他是一个None,但是您的这个操作已经使得z中的元素逆序了
  1. x = int(input())
  2. z = []

  3. while x:
  4.     y = x % 2
  5.     z.append(y)
  6.     x = x//2
  7. z.reverse()

  8. print(z)

  9. for i in range(len(z)):
  10.     print(z[i], end='')

复制代码

小的稍微改了一下代码,楼主大人请看
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2017-12-5 06:57:00 From FishC Mobile | 显示全部楼层
reverse函数是操作列表本身,返回值为None
你应该去掉变量b,直接z.reverse(),然后打印z即可
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2017-12-6 20:59:20 | 显示全部楼层
tailor_long 发表于 2017-12-5 00:00
楼主大人,您好:
因为list的reverse不返回任何东西,它只是将list自身的元素逆序
所以你的b = z.reverse ...

soga, 原来append 和 reverse没有返回值,多谢。

感谢提供修改的代码,最后一段改成这样不是更简单吗
  1. for i in z:
  2.     print(i, end = '')
复制代码

小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2017-12-6 21:00:39 | 显示全部楼层
BngThea 发表于 2017-12-5 06:57
reverse函数是操作列表本身,返回值为None
你应该去掉变量b,直接z.reverse(),然后打印z即可

多谢,懂啦
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2017-12-6 21:08:45 | 显示全部楼层
python小学童 发表于 2017-12-6 20:59
soga, 原来append 和 reverse没有返回值,多谢。

感谢提供修改的代码,最后一段改成这样不是更简单吗 ...

(⊙v⊙)嗯!确实你那样更简单!
我用c语言多了,都思维定势了!!!
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2026-3-4 13:17

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表