鱼C论坛

 找回密码
 立即注册
查看: 2916|回复: 6

为什么print('hello\n'*10)和'hello\n'*10结果不一样?

[复制链接]
发表于 2022-7-31 16:12:42 | 显示全部楼层 |阅读模式

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

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

x
本帖最后由 1728160496 于 2022-7-31 16:14 编辑

如题,前者的结果是

hello
hello
hello
hello
hello
hello
hello
hello
hello
hello
后者的结果是:'hello\nhello\nhello\nhello\nhello\nhello\nhello\nhello\nhello\nhello\n'
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2022-7-31 17:07:37 | 显示全部楼层
不知道啊,我记得小甲鱼之前的视频讲过吧
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2022-7-31 17:38:43 | 显示全部楼层
第一个是把他给打印出来,打印的时候是不能出现\n \t这些转义字符和引号的

第二个是把他给显示出来,一般显示的时候不会像这样
  1. >>>'hello\n'*3
  2. '''hello
  3. hello
  4. hello'''
复制代码

而是这样
  1. >>>'helllo\n'*3
  2. 'hello\nhello\nhello\n'
复制代码
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2022-7-31 23:33:48 | 显示全部楼层
第二个只在互交模式生效
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2022-8-6 15:40:41 | 显示全部楼层
tommyyu 发表于 2022-7-31 17:38
第一个是把他给打印出来,打印的时候是不能出现\n \t这些转义字符和引号的

第二个是把他给显示出来,一 ...

也就是说打印是类似\n这样的指令才有效?还是说是因为第二个没有括号所以\n未生效?
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2022-8-19 21:00:18 | 显示全部楼层
本帖最后由 asky533 于 2022-8-19 21:02 编辑

因为在交互模式中,直接写出,他就会把东西一股脑地进行简单计算后推出来,认不出转义字符,但是要是用print()这个函数打印出来的话,他就会去分析里面的转义字符串并且认出\n转行了。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2022-8-24 08:00:34 | 显示全部楼层
前者为打印
后者为显示
如果是
  1. >>> x = "hello\n" * 10
  2. >>> print(x)
  3. hello
  4. hello
  5. hello
  6. hello
  7. hello
  8. hello
  9. hello
  10. hello
  11. hello
  12. hello

  13. >>>
复制代码

就行了
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-5-19 04:34

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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