小甲鱼的铁粉 发表于 2020-6-15 10:54:56

python3中的bin函数

正确的代码是:
q = True
while q:
    a = input("输入数字进行进制转换,输入Q结束程序")
    if a !='Q':
      a=int(a)
      print('十进制->十六进制:%d->0x%x' % (a,a))
      print('十进制->八进制:%d->0o%o' % (a,a))
      print('十进制->二进制:%d->' % a,bin(a))
    else:
      q = False
      print("成功退出")
运行结果:见图片
第八行这个输出里面有bin函数
我觉得是:print('十进制->二进制:%d->%d' % (a,bin(a)))
但是这样是错的,为什么正确的代码中一个%d可以输出两个数呢?

Twilight6 发表于 2020-6-15 10:56:15

本帖最后由 Twilight6 于 2020-6-15 10:57 编辑


bin 返回的是 字符串 ,而你 %d 是格式化整型改成 %s 就可以了~

而且答案的 print('十进制->二进制:%d->' % a,bin(a))

是没错的,注意看那个逗号~ 我们时候有遇到过类似 print(a,b,c) 吧,这就是简单分隔作用

小甲鱼的铁粉 发表于 2020-6-15 10:56:35

这样他就报错

小甲鱼的铁粉 发表于 2020-6-15 10:57:52

Twilight6 发表于 2020-6-15 10:56
bin 返回的是 字符串 ,而你 %d 是格式化整型改成 %s 就可以了~

而且答案的 print('十进制->二进 ...

6666666666
页: [1]
查看完整版本: python3中的bin函数