Python中Print()函数用法的实例详解

本篇文章给大家带来了关于Python的相关知识,其中主要介绍了关于print()函数用法的相关知识,print() 函数用于打印输出,是python中最常见的一个内置函数,下面一起来看一下,希望对大家有帮助。

程序员必备接口测试调试工具:立即使用

Apipost = Postman + Swagger + Mock + Jmeter

Api设计、调试、文档、自动化测试工具

后端、前端、测试,同时在线协作,内容实时同步

【相关推荐:Python3视频教程 】

print() 函数用于打印输出,是python中最常见的一个内置函数。

一、print()函数的语法如下:

print(*objects, sep=' ', end='
', file=sys.stdout, flush=False)

  将 "objects" 打印输出至 "file参数" 指定的文本流,以 "sep 参数"分隔开并在末尾加上 "end参数"。 "sep" 、 "end "、 "file" 和"flush" 必须以关键字参数的形式给出。 flush 关键字参数是在 phthon3.3 版后增加的。

  所有非关键字参数都会被转换为字符串,就像是执行了 str() 一样,并会被写入到流,以 “sep参数“ 且在末尾加上 “end参数“。 “sep参数“ 和 “end参数“都必须为字符串;它们也可以为 “None“,这意味着使用默认值。 如果没有给出 “objects参数“,则 print() 将只写入 “end参数“。

  "file 参数"必须是一个具有 write(string) 方法的对象;如果参数不存在或为 None,则将使用 sys.stdout。 由于要打印的参数会被转换为文本字符串,因此 print() 不能用于二进制模式的文件对象。 对于这些对象,应改用 file.write(…)。输出是否缓存通常取决于 file,但如果 flush 关键字参数为 True,输出流会被强制刷新。

二、print()打印输出文本

  打印的文本内容不仅仅是指中文文本,还可以是英文文本或者包含特殊符号的文本,打印文本时需要使用引号将文本内容引起来,引号可以是单引号(' '),双引号(" "),三引号(""" """)

使 用 方 法

代   码

运行结果

Single quotes

一对单引号,单引号里可以用双引号,并可以将单引号打印出来

print('有生命便有希望')

有生命便有希望

print('"有生命便有希望"')

"有生命便有希望"

Double quotes

一对双引号,双引号里可以用单引号,并可以将单引号打印出来

print("永不气馁!")

永不气馁!

print("'永不气馁! '")

'永不气馁! '

Triple quoted

一对三引号,引用多行文本

Multilinetext="""

They who cannot do as they would,

must do as they can.

不能如愿而行,

也须尽力而为。

"""

print(Multilinetext)

hey who cannot do as they would,

must do as they can.

不能如愿而行,

也须尽力而为。

三、print()中空格的使用方法

方  法

代   码

运行结果

1

直接在引号中打空格,空格数不限

print("谋事在人 成事在天 有生命便有希望")

谋事在人 成事在天 有生命便有希望

2

相邻的两项用逗号间隔

print("谋事在人","成事在天","有生命便有希望")

谋事在人 成事在天 有生命便有希望

3

多行打印时用逗号结尾

print ("谋事在人",)

print ("成事在天")

谋事在人 成事在天

(2个字符串之间有个空格)

4

相邻的两项或多行打印时没有用逗号间隔

print("谋事在人""成事在天")

print ("谋事在人")

print ("成事在天")

谋事在人成事在天

谋事在人成事在天

5

字符串间不要空格

print ("谋事在人" + "成事在天")

谋事在人成事在天

(2个字符串之间没有空格了)

四、Print() 换行

  print()函数的“end”参数指定了print()函数在打印完内容之后,用什么符号来表示结尾,默认值是“
”,表示换行,即print()函数在打印完指定内容之后,就会自动换行。

  我们可以通过“end”参数的定义,用其他符号来表示print()输出打印完成。例如:print()函数的“end”参数指定为“|”,即print()函数每次输出完成之后,都输出“|”。

强行换行

代 码

print("有生命
便有希望")

运行结果

有生命

便有希望

打印后不换行,用end参数来设置你想要的结束符号

代 码

print("谋事在人",end =" ")

print("成事在天", end =" ")

print("有生命便有希望", end =" ")

运行结果

谋事在人 成事在天 有生命便有希望

代 码

print("谋事在人",end ="|")

print("成事在天", end ="|")

print("有生命便有希望", end ="|")

运行结果

谋事在人|成事在天|有生命便有希望|

代  码

for x in range(0, 6):

print(x, end=' ')

for x in range(0, 6):

print(x, end=',')

运行结果

0 1 2 3 4 5 0,1,2,3,4,5,

代  码

for x in range(1, 6):

print(x, end=' ')

print()

for x in range(1, 6):

print(x, end=',')

print()

运行结果

1 2 3 4 5

1,2,3,4,5,

五、区隔符 sep

用sep参数来约束print括号里多项内容之间的区隔符

代   码

print("谋事在人", "成事在天", "有生命便有希望", sep ="&")

运行结果

谋事在人&成事在天&有生命便有希望

代   码

print("www", "csdn", "net", sep=".")

运行结果

www.csdn.net

六、制表符

制表符 控制水平间隔,作用如tab键,在打印输出时控制间隔距离

表示空8个字符,
如果元素占位小于8,各列能实现完美对齐,皆大欢喜;
如果字符元素占位大于或等于8个字符,对齐会出现偏差,可以再在其中插入N个 拼起来,这样就能使元素对齐

或者使用格式化输出,具体请看实例

代 码

print("不能如愿而行 也须尽力而为")

运行结果

不能如愿而行 也须尽力而为

代 码

for i in range (1, 11):

print(i,' ',i*2,' ',i*3,' ',i*4)

运行结果

1 2 3 4

2 4 6 8

3 6 9 12

4 8 12 16

5 10 15 20

6 12 18 24

7 14 21 28

8 16 24 32

9 18 27 36

10 20 30 40

代  码

name = 'Adversity awake'

saying="Man proposes, god disposes 谋事在人,成事在天"

print(name.title()+" once said"+": "+'
"'+saying+'"')

运行结果

Adversity Awake once said:

"Man proposes, god disposes 谋事在人,成事在天"

代  码

#错误print()效果距离:

print("学生号 姓名 科目 分数")
print("100000101 阿凡达 语文 80")
print("100000102 卡梅隆卡梅隆 语文 85")
print("100000103 莫妮卡·贝鲁卡梅隆 语文 85")

运行结果

# 对齐出现偏差

# 对齐出现偏差

代  码 print("学生号 姓名 科目 分数")
print("100000101 阿凡达 语文 80")
print("100000102 卡梅隆卡梅隆 语文 85")
print("100000103 莫妮卡·贝鲁卡梅隆 语文 85")
运行结果

#用多个制表符,对齐完好

#用多个制表符,对齐完好

代  码 print("%-10s %-30s %-10s %-10s"%("学生号","姓名","科目","分数"))
print("%-10s %-32s %-10s %-12s"%("100000101","阿凡达","语文","80"))
print("%-10s %-30s %-10s %-12s"%("100000102","卡梅隆卡梅隆","语文","82"))
print("%-10s %-26s %-10s %-12s"%("100000103","莫妮卡·贝鲁卡梅隆","语文","85"))
运行结果

#对齐完好

编外话:有时需要对齐输出,还可以使用format()来实现:

#对齐完好

编外话:有时需要对齐输出,还可以使用format()来实现:

代  码

products=[["iphone",6888],["MacPro",14800],["coffee",32],["abc",2499],["Book",60],["Nike",699],["MacPro",45600],["coffee",432],["abc",244499],["Book",6230],["Nike",61299],["MacPro",14800],["coffee",32],["abc",2499],["Book",60],["Nike",699]]

print("-"*10+"商品列表"+"-"*10)

i=0

for product in products:

print('{:<6} {:<10} {:<10}'.format(str(i), product[0], str(product[1])))

i = i+1

运行结果

七、输出数学表达式

  print后的括号中如果是数学表达式,则打印结果为表达式最终运算的结果

Print 打印表达式的值

代  码

Print(1+2+3+4+5)

运行结果

15

代  码

print(8/1)

运行结果

8.0

代  码

print(2*4)

运行结果

8

代  码

print(18-10)

运行结果

8

代  码

print(2+6)

运行结果

8

八、打印输出反斜杠

打印反斜杠,把2个反斜杠放一起

代 码

Print("不能如愿而行\也须尽力而为")

运行结果

不能如愿而行也须尽力而为

九、print()变量的输出

  无论什么类型的数据,包括但不局限于:数值型,布尔型,列表变量,字典变量……都可以通过print()直接输出。

print()变量的输出

代  码

#输出数值型变量

num = 91682

print(num)

运行结果

91682

代  码

#输出字符串变量

name = '逆境清醒'

print(name)

运行结果

逆境清醒

代  码

#输出列表变量

list = [1,2,3,4,5,'a','b','c']

print(list)

运行结果

[1, 2, 3, 4, 5, 'a', 'b', 'c']

代  码

#输出元组变量

tuple = (1,2,3,4,5,'a','b','c')

print(tuple)

运行结果

(1, 2, 3, 4, 5, 'a', 'b', 'c')

代  码

#输出字典变量

dict ={'a':1, 'b':2,'c':3}

print(dict)

运行结果

{'a': 1, 'b': 2, 'c': 3}

十、print()数据的格式化输出

在字符串中插入

代   码

运 行 结 果

1

字符串变量

name = "逆境清醒"

print("我的名字是 %s " % name)

我的名字是 逆境清醒

2

整数变量

age = 100

print("我的年龄是 %d"%(age)+"岁了")

我的年龄是 100岁了

3

小数变量

i = 2670.5

print("数字是 %f" %i)

数字是 2670.500000

%号点(.)前跟字段宽度;

%号点(.)后跟精度值;字段宽度中,小数点也占一位

i = 2.67145573

print("8位保留字段宽度%8f"%(i))

8位保留字段宽度2.671456

i = 2.67145573

print("保留两位小数输出的是%.2f"%(i))

保留两位小数输出的是2.67

i= 2.6714563467

print("a"+'%10.3f'%i)

print("a"+'%f'%i)

a 2.671

a2.671456
(精度为3,所以只显示.671,指定宽度为10,所以在左边补充5个空格,达到10位的字段宽度,字段宽度中,小数点也占一位)

4

s='逆境清醒'

x=len(s)

print('%s名字的长度是 %d' %(s,x))

逆境清醒名字的长度是 4

格式输出

代   码

运行结果

%s

输出一个字符串,字符串采用str()的显示

i= 2.6714563467

print('%s'%i)

2.6714563467

%r

字符串(repr())的显示

print('%r'%repr(set([1,1,2,3])))

'{1, 2, 3}'

%c

输出一个单一的字符

print('%c'%90)

Z

%e、%E

指数(基底写e)

k= 2671.4563467284

print('%e'%k)

print('%E'%k)

2.671456e+03

2.671456E+03

%b

二进制整数

print(bin(50))

0b110010

%hd、%d、%ld

以十进制、有符号的形式输出 short、int、long 类型的整数

print('%d'%50)

50

%hu、%u、%lu

以十进制、无符号的形式输出 short、int、long 类型的整数

print('%u'%50

50

%ho、%o、%lo

以八进制、不带前缀、无符号的形式输出 short、int、long 类型的整数

print('%o'%50)

62

%#ho、%#o、%#lo

以八进制、带前缀、无符号的形式输出 short、int、long 类型的整数

print('%#o'%50)

0o62

%hx、%x、%lx、

%hX、%X、%lX

以十六进制、不带前缀、无符号的形式输出 short、int、long 类型的整数。如果 x 小写,那么输出的十六进制数字也小写;如果 X 大写,那么输出的十六进制数字也大写。

print('%x'%50)

32

%#hx、%#x、%#lx、

%#hX、%#X、%#lX

以十六进制、带前缀、无符号的形式输出 short、int、long 类型的整数。如果 x 小写,那么输出的十六进制数字和前缀都小写;如果 X 大写,那么输出的十六进制数字和前缀都大写。

print('%#x'%50)

print('%#X'%50)

0x32

0X32

%f、%lf 、%F

以十进制的形式输出 float、double 类型的浮点数

i= 2.6714563467

print('%f'%i)

2.67146

%g、%lg、

%G、%lG

以十进制和指数中较短的形式输出 float、double 类型的小数,并且小数部分的最后不会添加多余的 0。如果 g 小写,那么当以指数形式输出时 e 也小写;如果 G 大写,那么当以指数形式输出时 E 也大写。

i= 2.6714563467

print('%g'%i)

2.67146

其他一些格式输出方法

代  码

k= 2671.4563467284

print('二进制形式''{0:b}'.format(int(k)))

运行结果

二进制形式101001101111

代  码

k= 2671.4563467284

print('十进制形式''{:d}'.format(int(k)))

运行结果

十进制形式2671

代  码

k= 2671.4563467284

print('八进制形式''{:o}'.format(int(k)))

运行结果

八进制形式5157

代  码

k= 2671.4563467284

print('十六进制形式''{:x}'.format(int(k)))

运行结果

十六进制形式a6f

代  码

k= 2671.4563467284

print('数字形式''{:n}'.format(k))

运行结果

数字形式2671.46

代  码

k= 2671.4563467284

print('百分数形式''{:%}'.format(k))

运行结果

百分数形式267145.634673%

代  码

k= 2671.4563467284

print('幂指数形式''{:e}'.format(k))

运行结果

幂指数形式2.671456e+03

代  码

k= 2671.4563467284

print('十进制较短的形式输出''{:g}'.format(k))

运行结果

十进制和指数中较短的形式输出2671.46

代  码

k= 2671.4563467284

print('十进制浮点数''{:f}'.format(k))

运行结果

十进制浮点数2671.456347

代  码

输出二进制数

k= 2671.4563467284

print(bin(int(k)))

运行结果

0b101001101111

代  码

输出八进制数

k= 2671.4563467284

print(oct(int(k)))

运行结果

0o5157

代  码

输出十六进制数

k= 2671.4563467284

print(hex(int(k)))

运行结果

0xa6f

英文大小写转换(title()首字母大写,upper()全大写,lower()全小写)

代  码

name = 'Adversity awake'

print(name.title())

运行结果

Adversity Awake

代  码

name = 'Adversity awake'

print(name.upper())

运行结果

ADVERSITY AWAKE

代  码

name = 'Adversity awake'

print(name.lower())

运行结果

adversity awake

十一、Print()小例子

11.1 打印字符

打印字符

代  码

for u in range(1, 100):

print('{:c}'.format(int(u)),end =" | ")

运行结果

| | | | | | | | |
| | | | | | | | | | | | | | | | | | | | !
| " | # | $ | % | & | ' | ( | ) | * | + | , | – | . | / | 0 | 1 | 2 | 3 | 4 | 5
| 6 | 7 | 8 | 9 | : | ; | < | = | > | ? | @ | A | B | C | D | E | F | G | H | I
| J | K | L | M | N | O | P | Q | R | S | T | U | V | W | X | Y | Z | [ | | ]
| ^ | _ | ` | a | b | c | 0b10

11.2 九九乘法表

九九乘法表

代   码

for i in range(1, 10):

for j in range(1, i+1):

print("{}*{}={}".format(j, i, i*j), end=" ")

print()

运行结果

1*1=1

1*2=2 2*2=4

1*3=3 2*3=6 3*3=9

1*4=4 2*4=8 3*4=12 4*4=16

1*5=5 2*5=10 3*5=15 4*5=20 5*5=25

1*6=6 2*6=12 3*6=18 4*6=24 5*6=30 6*6=36

1*7=7 2*7=14 3*7=21 4*7=28 5*7=35 6*7=42 7*7=49

1*8=8 2*8=16 3*8=24 4*8=32 5*8=40 6*8=48 7*8=56 8*8=64

1*9=9 2*9=18 3*9=27 4*9=36 5*9=45 6*9=54 7*9=63 8*9=72 9*9=81

11.3 打印实心菱形

打印实心菱形

代   码

n=5

for i in range(1,n+1):

print(" "*(n-i)+"*"*(2*i-1))

for i in range(1,n):

print(" "*i+"*"*(2*(n-i)-1))

运行结果

*

***

*****

*******

*********

*******

*****

***

*

11.4 打印空心菱形

打印空心菱形

代   码

n=5

print(" "*(n-1)+"*")

for i in range(1, n):

print(" "*(n-1-i)+"*"+" "*(2*i-1)+"*")

for i in range(1, n-1):

print(" "*i+"*"+" "*((n-1-i)*2-1)+"*")

print(" "*(n-1)+"*")

运行结果

*

* *

* *

* *

* *

* *

* *

* *

*

*

11.5 打印空心三角形

打印空心三角形

代   码

n=5

print(" "*(n-1)+"*")

for i in range(2, n):

print(" "*(n-i)+"*"+" "*(2*(i-1)-1)+"*")

print("* "*n)

运行结果

*

* *

* *

* *

* * * * *

11.6 打印实心三角形

打印实心三角形

代   码

n=5

m = 8

for i in range(0, n):

for j in range(0, m):

print(end=" ")

m = m – 1

for j in range(0, i + 1):

print("* ", end=' ')

print(" ")

运行结果

*

* *

* * *

* * * *

* * * * *

11.7 打印侧三角形(6种)

打印侧三角形1

代   码

方法一:

i = 5

while 0 < i <= 5:

j = 1

while j <= i:

print("* ", end = '')

j += 1

print(" ")

i -= 1

方法二:

for i in range(0,5):

tx="◆"

print()

for k in range(0,5):

if i>k:

continue

print(tx,end="")

运行结果

◆◆◆◆◆

◆◆◆◆

◆◆◆

◆◆

打印侧三角形2

代 码

方法一:

i = 1

while i <= 5:

j = 1

while j <= i:

print("* ", end = '')

j += 1

print(" ")

i += 1

方法二:

n = 5

print('
'.join('◆' * i for i in range(1, n + 1)))

运行结果

◆◆

◆◆◆

◆◆◆◆

◆◆◆◆◆

打印侧三角形3

代 码

for i in range(0,5):

tx='◆'

tx1=' '

print()

for j in range(0,5):

print(tx if i<=j else tx1,end="")

运行结果

◆◆◆◆◆

◆◆◆◆

◆◆◆

◆◆

打印三角形4

代 码

for i in range(0,5):

tx='◆'

tx1=' '

print()

for j in range(0,5):

print(tx if i<=j else tx1,end="")

运行结果

◆◆◆◆◆

◆◆◆◆

◆◆◆

◆◆

打印三角形5

代 码

l=5

for i in range(l):

for j in range(i):

print(end=' ')

for k in range(2*(l-i)-1):

print(end='◆')

print()

运行结果

◆◆◆◆◆◆◆◆◆

 ◆◆◆◆◆◆◆

  ◆◆◆◆◆

   ◆◆◆

    ◆

打印三角形6

代 码

i = 1

while i <= 9:

if i <= 5:

print('◆ '*i)

else:

print('◆ '*(10 – i))

i += 1

运行结果

◆ ◆

◆ ◆ ◆

◆ ◆ ◆ ◆

◆ ◆ ◆ ◆ ◆

◆ ◆ ◆ ◆

◆ ◆ ◆

◆ ◆

11.8 打印平行四边形

打印平行四边形

代 码

l = 5

for i in range(l):

for j in range(l-i):

print(end=' ')

for k in range(l):

print(end='◆')

print()

运行结果

◆◆◆◆◆

◆◆◆◆◆

◆◆◆◆◆

◆◆◆◆◆

◆◆◆◆◆

11.9 用字母单词 love 打印心形

用字母单词打印心形

代  码

print('
'.join([''.join([('Love'[(x-y) % len('Love')] if ((x*0.05)**2+(y*0.1)**2-1)**3-(x*0.05)**2*(y*0.1)**3 <= 0 else ' ') for x in range(-30, 30)]) for y in range(30, -30, -1)]))

运行结果

11.10 用字符输出 I ❤ U (2款效果)

用字符输出 I 爱 U (2款效果)

import time

y = 2.5

while y>=-1.6:

x = -3.0

while x<=4.0:

if (x*x+y*y-1)**3<=3.6*x*x*y*y*y or (x>-2.4 and x<-2.1 and y<1.5 and y>-1) or (((x<2.5 and x>2.2)or(x>3.4 and x<3.7)) and y>-1 and y<1.5) or (y>-1 and y<-0.6 and x<3.7 and x>2.2):

print(' ',end="")

else:

print('*',end="")

x += 0.1

print()

time.sleep(0.25)

y -= 0.2

import time

y = 2.5

while y>=-1.6:

x = -3.0

while x<=4.0:

if (x*x+y*y-1)**3<=3.6*x*x*y*y*y or (x>-2.4 and x<-2.1 and y<1.5 and y>-1) or (((x<2.5 and x>2.2)or(x>3.4 and x<3.7)) and y>-1 and y<1.5) or (y>-1 and y<-0.6 and x<3.7 and x>2.2):

print('*',end="")

else:

print(' ',end="")

x += 0.1

print()

time.sleep(0.25)

y -= 0.2

11.11 由Dear,I love you forever! 五个单词输出五个爱心

输出五个爱心,分别由Dear I love you forever! 五个单词填充而成。

import time

sentence = "Dear, I love you forever!"

for char in sentence.split():

allChar = []

for y in range(12, -12, -1):

lst = []

lst_con = ''

for x in range(-30, 30):

formula = ((x*0.05)**2+(y*0.1)**2-1)**3-(x*0.05)**2*(y*0.1)**3

if formula <= 0:

lst_con += char[(x) % len(char)]

else:

lst_con += ' '

lst.append(lst_con)

allChar += lst

print('
'.join(allChar))

time.sleep(1)

十二、Print()中文输入显示乱码问题

  如果代码中有汉字中文,运行的时候python报错,出现python中无法正常输入中文,乱码等情况:

编译提示:SyntaxError: (unicode error) 'utf-8' codec can't decode byte 0x*** in position 0: …

主要是由于编码的问题引起的。

  受开发系统和环境不同影响,解决办法会有所不同,但一般按以下办法处理就能解决,有需要者请自行尝试适合自己系统的解决办法:(记住,下面的方法不需要全部添加到python文件中,选择其中一项或两项尝试,能解决问题即可)

在你的python文件(.py)文件第一行

1、开头加入

# coding=utf-8

登录后复制

hmoban主题是根据ripro二开的主题,极致后台体验,无插件,集成会员系统
自学咖网 » Python中Print()函数用法的实例详解
温馨提示您:本站所载文章、数据仅供参考,如果有文章侵犯了您的权益,请来信告知我们删除,联系邮箱:976157886@qq.com
Copyright © 2023 自学咖网 - All rights reserved 浙ICP备2023005527号