Pycharm中print函数有end= 参数,控制台不打印输出

发布时间 2023-06-19 12:24:21作者: sangern

Pycharm中print函数有end= 参数,控制台不打印输出

for i in range(1, 256):  # 寻找对称平方数
    square = str(i*i)  # 转为字符串
    if square == square[::-1]: 
        print(i, end='\t')

循环中 print函数有end= 参数, 无论 end='\t' 还是 end='' end='9' end='a',Pycharm运行后都不会输出。

后面加一句空打印print()即可。这句的作用只是打印一个换行

for i in range(1, 256):  # 寻找对称平方数
    square = str(i*i)  # 转为字符串
    if square == square[::-1]: 
        print(i, end='\t')
print()

 

猜测Pycharm是一行的内容一起输出的,所以没有换行内存一直积压在缓存

print()函数输出的时候必须以换行符‘\n’结尾才会输出到控制台,否则print()函数会继续等待输出。

 

另一种验证是读取文件文本内容,暂停0.05秒读取下一个,此时不是0.05面后显示下一个字符,而是等一行全部读取完毕,遇到换行符才会显示出来

import time
with open('./code/0.txt', encoding=fc) as f:
    while 1:
        char = f.read(1)
        if not char:
            break
        print(char, end='')
        time.sleep(0.05)