python print用法不换行_python中print()函数的用法和end=""不换行详解(03)

print('hello world!')print('hello', 'world!') #逗号自动添加默认的分隔符:空格

print('hello' + 'world!') #加号表示字符拼接

print('hello', 'world', sep='***') #单词间用***分隔

print('#' * 50) #*号表示重复50遍

print('how are you?', end='') #默认print会打印回车,end=''表示不要回车

需求:打印五个字符,在一行上

代码:

#-*- coding: cp936 -*-

i =0while i< 5:

i+= 1

print(i,end = '')#等=号 前后一定要加空格,一定要用Python3

结果: 1 2 3 4 5那么问题来了,为什么加一个end="" 就不换行了,就打印在一行上了呢?首先,我们要聊一聊print()这个内置函数了,它有哪些具体的参数呢?请看列表:

20180609090208179

通过函数参数我们可以看到。print()函数里面是默认换行的,具体换行参数是end="\n"。so,如果我们把参数end="\n"换成end=’'相当于去掉了换行符\n ,你可以试想一下,现在输入的不是程序,而是你自己的打字,12345是不回车的。但是如果你输入的是1\n ,就换行了。补充个知识点,在windows系统中,\n表示换行,n是new line 的缩写,\r表示回到行首,表示回车。具体的历史典故呢桥哥也是在不断的摸索当中,但是我找到了一个来源,同志们可以参考一下。\r是回车符,\n是换行符

计算机还没有出现之前,有一种叫做电传打字机(Teletype Model 33)的玩意,每秒钟可以打10个字符。但是它有一个问题,就是打完一行换行的时候,要用去0.2秒,正好可以打两个字符。要是在这0.2秒里面,又有新的字符传过来,那么这个字符将丢失。

于是,研制人员想了个办法解决这个问题,就是在每行后面加两个表示结束的字符。一个叫做“回车”,告诉打字机把打印头定位在左边界;另一个叫做“换行”,告诉打字机把纸向下移一行。

这就是“换行”和“回车”的来历,从它们的英语名字上也可以看出一二。

后来,计算机发明了,这两个概念也就被般到了计算机上。那时,存储器很贵,一些科学家认为在每行结尾加两个字符太浪费了,加一个就可以。于是,就出现了分歧。Unix

系统里,每行结尾只有“<换行>”,即“\n”;Windows系统里面,每行结尾是“<回车><换行>”。

案例:

for i in range(10):print(i)

0

1

2

3

4

5

6

7

8

9

如果不想换行用 print(xxx,end=’’)

案例:

for i in range(10):print(i,end = '')

0123456789

如果想在最后一个输出值后面给定指定方式输出,可以 end='xxx’方式

案例:

#-*- coding: cp936 -*-

for i in range(10):print(i,end = '\t') #不换行,制表符

0 1 2 3 4 5 6 7 8 9

#-*- coding: cp936 -*-

for i in range(10):print(i,end = '-') #不换行,结尾后追加—

0-1-2-3-4-5-6-7-8-9-

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值