koreabao 发表于 2022-1-23 16:20:33

python制表符(tab)和换行符的问题

本帖最后由 koreabao 于 2022-1-23 16:23 编辑

1, 这个是先换行然后齁制表符号,就是下面的答案

>>> print("Languages:\n\tPython\n\tC\n\tJavaScript")
Languages:
        Python
        C
        JavaScript

2. 这个是先制表,然后后换行, 那这个感觉制表符没有了呢?请问制表符去什么地方了呢?
>>> print("Languages:\t\nPython\t\nC\t\nJavaScript")
Languages:       
Python       
C       
JavaScript
3. 2和光有换行符的效果看起来是一样的,他们一样吗?
>>> print("Languages:\nPython\nC\nJavaScrit")
Languages:
Python
C
JavaScrit

谢谢各位

hrpzcf 发表于 2022-1-23 16:22:34

本帖最后由 hrpzcf 于 2022-1-23 16:25 编辑

在Languages: 后面换行之前
在后面Python换行之前
在C后面换行之前

koreabao 发表于 2022-1-23 16:26:06

hrpzcf 发表于 2022-1-23 16:22
在Languages: 后面换行之前
在后面Python换行之前
在C后面换行之前

有什么办法可以在python里面看到这个空格吗?比如如何看这个行的位数?谢谢

hrpzcf 发表于 2022-1-23 16:35:04

koreabao 发表于 2022-1-23 16:26
有什么办法可以在python里面看到这个空格吗?比如如何看这个行的位数?谢谢

打印出来后鼠标从Python的n后面开始往后拖选就知道了,注意不要跨行,跨行拖选看不出来有没有制表符

翼是孤独 发表于 2022-1-23 17:11:43

这样

17688338393 发表于 2022-1-23 17:48:13

ddd

koreabao 发表于 2022-1-23 21:35:30

翼是孤独 发表于 2022-1-23 17:11
这样

请问有什么命令可以,发现吗? 然后这样做是不是又区别?

koreabao 发表于 2022-1-23 21:36:47

hrpzcf 发表于 2022-1-23 16:35
打印出来后鼠标从Python的n后面开始往后拖选就知道了,注意不要跨行,跨行拖选看不出来有没有制表符

想问有什么命令可以发现这种问题吗? 谢谢

翼是孤独 发表于 2022-1-23 23:21:03

koreabao 发表于 2022-1-23 21:35
请问有什么命令可以,发现吗? 然后这样做是不是又区别?

当然有区别,你选中不是可以看到明显不一样吗,虽然直接看不出来,但是你文本的长度肯定是不一样的,存储大小也不一样,\t是实打实的一个字符,保存文本的时候是需要内存存储的。
而且\t换了别的字符集或者编码,有的就不是透明的。

发现的话,文本输出用\t的话你肯定自己知道啊,读文本的时候\t也是能读出来的

你要是问什么办法能区分的话,复制到notepad++ 里,选中的话左下角会显示长度。
notepad++默认设置 tab=4个空格 ,所以你选中tab显示长度是4,选中空格显示长度是1

或者转成别的字符集 比如unicode 里面\t 就是 \u0009

koreabao 发表于 2022-1-25 11:55:49

翼是孤独 发表于 2022-1-23 23:21
当然有区别,你选中不是可以看到明显不一样吗,虽然直接看不出来,但是你文本的长度肯定是不一样的,存储 ...

请问在python里面有直接可以检查出来的办法吗?

翼是孤独 发表于 2022-1-25 14:31:23

koreabao 发表于 2022-1-25 11:55
请问在python里面有直接可以检查出来的办法吗?

你是要区分一段文本吗?
直接读字符串就行了,\t \n 都能读出来

你是说直接看就能区分出来的话
把字符串转成别的字符集,或者编码都可以看到不同

编译器直接带提示的话我没见过,不知道有没有这种插件

tommyyu 发表于 2022-1-25 17:59:48

koreabao 发表于 2022-1-25 11:55
请问在python里面有直接可以检查出来的办法吗?

利用字符串的.replace方法,可以将一个字符串换成另一个子字符串
例子:>>> '\t\t'.replace('\t',0000)
00000000

koreabao 发表于 2022-1-26 14:23:58

翼是孤独 发表于 2022-1-25 14:31
你是要区分一段文本吗?
直接读字符串就行了,\t \n 都能读出来



谢谢你

koreabao 发表于 2022-1-26 14:25:11

tommyyu 发表于 2022-1-25 17:59
利用字符串的.replace方法,可以将一个字符串换成另一个子字符串
例子:

您好
能在这里面做一下吗? 谢谢

2. 这个是先制表,然后后换行, 那这个感觉制表符没有了呢?请问制表符去什么地方了呢?
>>> print("Languages:\t\nPython\t\nC\t\nJavaScript")
Languages:      
Python      
C      
JavaScript
3. 2和光有换行符的效果看起来是一样的,他们一样吗?
>>> print("Languages:\nPython\nC\nJavaScrit")
Languages:
Python
C
JavaScrit

tommyyu 发表于 2022-1-26 15:14:02

koreabao 发表于 2022-1-26 14:25
您好
能在这里面做一下吗? 谢谢



print("Languages:\nPython\nC\nJavaScrit".replace('\t','0000'))

tommyyu 发表于 2022-1-26 15:14:32

koreabao 发表于 2022-1-26 14:25
您好
能在这里面做一下吗? 谢谢



print("Languages:\t\nPython\t\nC\t\nJavaScript".replace('\t','0000'))

koreabao 发表于 2022-1-26 16:03:21

tommyyu 发表于 2022-1-26 15:14


你是这个意思啊,虽然不是我想要的,但是我想可能我的问题没有意义吧 哈哈,
我的问题就是 已经打印出来了 有的后面有tab,有的没有, 有没有什么办法能查出来, 不用肉眼和鼠标 .
不过谢谢您了

tommyyu 发表于 2022-1-26 16:17:09

本帖最后由 tommyyu 于 2022-1-26 16:21 编辑

{:10_277:}

翼是孤独 发表于 2022-1-26 18:54:48

还真有,Pycharm自带了

koreabao 发表于 2022-1-26 19:02:41

翼是孤独 发表于 2022-1-26 18:54
还真有,Pycharm自带了

我去 大佬, 跪谢了 555 救星
页: [1]
查看完整版本: python制表符(tab)和换行符的问题