鱼C论坛

 找回密码
 立即注册
12
返回列表 发新帖
楼主: 牛逼牛逼

[已解决]第15讲的动动手的一个小问题

[复制链接]
 楼主| 发表于 2020-4-18 13:35:51 | 显示全部楼层

大佬你好,问你一个问题print('十进制 -> 二进制 : %d -> '% (temp , bin(temp))),为什么我temp前面加个括号就报错
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-4-18 13:36:30 | 显示全部楼层
heidern0612 发表于 2020-4-18 12:29
没啥用,不用记。

写程序一辈子你能转换几次八进制和十六进制?

大佬你好,问你一个问题print('十进制 -> 二进制 : %d -> '% (temp , bin(temp))),为什么我temp前面加个括号就报错
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-4-18 13:37:29 | 显示全部楼层
qiuyouzhi 发表于 2020-4-18 12:18
你看前面的格式化操作符,有两个
所以后面也要对应两个
但由于Python语法,要用括号打包起来。

大佬你好,问你一个问题print('十进制 -> 二进制 : %d -> '% (temp , bin(temp))),为什么我temp前面加个括号就报错
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-4-18 13:38:08 | 显示全部楼层
Hoiste 发表于 2020-4-18 12:07
这两个num是括在一起的%(num, num),与前面%d,%o对应位置配对,第一个%d代表后面第一个%num为十进制数 ...

大佬你好,问你一个问题print('十进制 -> 二进制 : %d -> '% (temp , bin(temp))),为什么我temp前面加个括号就报错
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-4-18 13:38:13 | 显示全部楼层
牛逼牛逼 发表于 2020-4-18 13:34
大佬你好,问你一个问题print('十进制 -> 二进制 : %d -> '% (temp , bin(temp))),为什么我temp前面加个 ...

temp 前面加括号,括号对不上肯定报错啊
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-4-18 13:39:51 | 显示全部楼层
永恒的蓝色梦想 发表于 2020-4-18 13:38
temp 前面加括号,括号对不上肯定报错啊

对的上啊(temp,bin(temp))
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-4-18 13:40:20 | 显示全部楼层
牛逼牛逼 发表于 2020-4-18 13:37
大佬你好,问你一个问题print('十进制 -> 二进制 : %d -> '% (temp , bin(temp))),为什么我temp前面加个 ...

因为你只需要一个东西去格式化,你用括号打包起来
就变成需要格式化两个东西了。
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-4-18 13:43:25 | 显示全部楼层    本楼为最佳答案   
牛逼牛逼 发表于 2020-4-18 13:39
对的上啊(temp,bin(temp))


…… str.__mod__ 在传入元组的时候会对元组里的元素分别格式化。
字符串里面只有一个占位符,你传了两个元素,自然炸了。
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-4-18 14:40:29 | 显示全部楼层
qiuyouzhi 发表于 2020-4-18 13:40
因为你只需要一个东西去格式化,你用括号打包起来
就变成需要格式化两个东西了。

非常感谢大佬,可惜最佳评论只有一个,应该多几个的,谢谢
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-4-18 17:03:18 | 显示全部楼层
牛逼牛逼 发表于 2020-4-18 13:38
大佬你好,问你一个问题print('十进制 -> 二进制 : %d -> '% (temp , bin(temp))),为什么我temp前面加个 ...

因为字符串中只有一个占位符 %d,只能格式化一个数据。
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-6-16 23:43

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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