1. print函数语法
print[prɪnt]:打印,输出。
【功能】
输出程序结果,默认输出到屏幕即程序终端,也可以输出到文件中。
【语法参考】
print(value, ..., sep='', end='n', file=, flush=False)
【参数说明】
value要输出的值,可以是字符串、整数、浮点数等各种类型的变量等等。
… 值列表:表示可以一次性打印多个值,值与值之间用英文逗号,分隔,打印出来的值之间默认用空格隔开。
【代码示例】
print(2,4,6,8)
【终端输出】
2 4 6 8
print函数2,4,6,8多个值之间用英文逗号,分隔,终端输出的结果默认用空格隔开。
sep 表示值与值之间的分隔符,默认是一个空格,也可以自己设置成其他的分隔符。
separated[ˈsepəreɪtɪd]:分开的。
【代码示例】
print(2,4,6,8)
【终端输出】
2 4 6 8
在不添加sep参数的情况下,终端输出的结果默认用空格隔开。
【代码示例】
print(2,4,6,8,sep=",")
【终端输出】
2,4,6,8
修改sep参数,输出的对象用逗号,分隔。
【代码示例】
print(2023,5,15,sep="/")
【终端输出】
2023/5/15
修改sep参数,输出的对象用斜杆/分隔。
【代码示例】
print(21,52,10,sep=":")
【终端输出】
21:52:10
修改sep参数,输出的对象用斜杆:分隔。
end 设定输出语句以什么结尾,默认是换行符n结尾,即输出后会重新起一行,也可设置成其他的分隔符,以实现不换行输出。
n是转义字符,作用是换行。
【代码示例】
print("安迪Python学习笔记")
print("xyz77520520")
【终端输出】
安迪Python学习笔记
xyz77520520
上述代码中没有end参数,则默认end=”n”,即每个print语句执行完毕后都有一个换行。
所以看到的结果是安迪Python学习笔记在第一行,xyz77520520在第二行。
上述代码和下面的代码的含义等同。
【代码示例】
print("安迪Python学习笔记",end="n")
print("xyz77520520",end="n")
【终端输出】
安迪Python学习笔记
xyz77520520
【代码示例】
print("安迪Python学习笔记",end="。")
print("xyz77520520",end="。")
【终端输出】
安迪Python学习笔记。xyz77520520。
添加end=”。”,则每个print输出以句号结尾,大家发现此时没有换行效果了,输出结果在同一行。
【代码示例】
print("安迪Python学习笔记",end="/")
print("xyz77520520",end="/")
【终端输出】
安迪Python学习笔记/xyz77520520/
添加end=”/”,则每个print输出以/结尾,输出结果有换行效果。
【代码示例】
print("安迪Python学习笔记",end="")
print("xyz77520520",end="")
【终端输出】
安迪Python学习笔记xyz77520520
end=””表示什么都没有,没有换行,也没有任何字符分隔。
添加end=””,则多个print输出的结果是拼接在一起的。
file 表示要输出的目标对象,可以是文件也可以是数据流。可以设置file=文件存储对象即文件的路径,把内容保存到该文件中。
上面的输出都是输出到终端,我们添加file参数,可以让实现内容输出到文件中。
【代码示例】
# "目标.txt"是文件的相对路径
# "a+"以读写模式打开文件
# encoding='utf-8'文件的编码格式
f = open("目标.txt","a+",encoding='utf-8')
# 要写入的文件内容
text = "2023年的目标是新增1万个关注者!"
# 将text的内容输出到文件"目标.txt"中
print(text, file=f)
# 关闭文件
f.close
【终端输出】
运行上面的代码,将在程序所在的目录下生成一个名为目标.txt的文件。
该文件的内容为2023年的目标是新增1万个关注者!
注意程序所在的目录即为编辑器打开的文件夹所在的目录。
我vdcode编辑器打开的文件夹为安迪笔记。
我现在编写的代码存储位置为安迪笔记1.基础语法8686.py。
我创建的文件目标.txt应该在安迪笔记文件夹里,而不在86文件夹里。
相对路径里相对的是编辑器打开的文件目录,而不是当前py文件所在的目录。
如果我们想把文件生成在86文件夹里flush函数,可以将代码修改如下:
【绝对路径】
f = open(r"D:安迪笔记1.基础语法86目标1.txt","a+",encoding='utf-8')
# 要写入的文件内容
text = "2023年的目标是新增1万个关注者!"
# 将text的内容输出到文件"目标.txt"中
print(text, file=f)
# 关闭文件
f.close
【终端输出】
【相对路径】
f = open(r"安迪笔记1.基础语法86目标2.txt","a+",encoding='utf-8')
# 要写入的文件内容
text = "2023年的目标是新增1万个关注者!"
# 将text的内容输出到文件"目标.txt"中
print(text, file=f)
# 关闭文件
f.close
【终端输出】
相对路径和绝对路径是一个难点,大家一定要加强练习,确保熟练掌握。
否则在后期爬虫、数据分析中会出现代码运行成功,但你找不到你爬取到的结果。
【路径相关知识可参考下面的链接】
flush 表示是否立刻将输出语句输出到目标对象。默认flush = False,表示输出值会保存在缓存中。当flush=True时,输出值强制写入文件。
【温馨提示】
sep, end, file, flush 都必须以命名参数方式传参,否则会被当做需要输出的对象。
【以命名参数传参】
print(2023,5,15,sep="/")
【终端输出】
2023/5/15
【没有参数名会被当做要输出的对象】
print(2023,5,15,"/")
【终端输出】
2023 5 15 /
如果print函数不传递任何参数,将会输出end参数的默认值,即每个print语句输出一个空行。
【代码示例】
print("程序结束!")
【终端输出】
程序结束!
【代码示例】
print()
print()
print()
print("程序结束!")
上述2段代码的输出效果是不一样的。
第一个段代码的输出没有空行。
第二段代码的输出有3行空行存在。
(pdf里显示不出来区别)
2. 横着输出数字序列
【目标任务】
输入一个正整数n,在一行中输出从1到n,输出的数以英文逗号结尾。
【输入】
3
【输出】
1,2,3,
【方法1】
n = int(input("请输入一个正整数:"))
# 该行代码的作用是检测输入的值,可不加
print("输入的正整数n=",n,sep="")
for i in range(1, n + 1):
print(i, end=',')
【终端输出】
输入的正整数n=3
1,2,3,
【思路解析】
依次输出,我们首先应该想到的利用for循环。
1到n的输出,我们通常用range函数实现。
【range函数的语法】
range(开始字符,结束字符,步长)
题目要求从1开始,那么开始字符应该为1。
题目要求到n结束,那么结束字符应该为n+1。
因为range函数的特征是含前不含后,即会输出1,不会输出n+1。
题目要求用逗号分隔,因此print函数中增加一个参数end=”,”。
【有sep=””的输出效果】
n = int(input("请输入一个正整数:"))
# 该行代码的作用是检测输入的值,可不加
print("输入的正整数n=",n,sep="")
【终端输出】
输入的正整数n=3
【没有有sep=””的输出效果】
n = int(input("请输入一个正整数:"))
# 该行代码的作用是检测输入的值,可不加
print("输入的正整数n=", n)
【终端输出】
输入的正整数n= 3
【输出区别在于等于号和数字3之间是否空格】
输入的正整数n=3
输入的正整数n= 3
【方法2】
# 用函数实现
def cal(n):
for i in range(1, n + 1):
print(i, end=',')
if __name__ == '__main__':
n = int(input("请输入一个正整数:"))
cal(n)
【终端输出】
1,2,3,
【代码解析】
def cal(n):
def 自定义函数关键字。
自定义了一个函数cal,参数n。
for i in range(1, n + 1):
print(i, end=',')
自定义函数的函数体。
函数体要实现的功能是range函数生成一个序列,for循环遍历该序列,依次输出序列中的数,每个数之间用英文逗号结尾。
if __name__ == '__main__':
if条件判断语句,判断是否在主程序中运行,这里可以不加的。
n = int(input("请输入一个正整数:"))
注意input函数得到的是字符串变量,要用int函数将字符串数据转换为整数类型数据。
【函数的调用语法】
函数名(参数)
cal(n)调用我们定义的函数。
3. 竖着输出数字序列
【目标任务】
Python中的字符串可以按单个字符进行索引,第一个字符序号为0,正向递增,编写一个程序,用户输入一个字符串,按每行一个字符的形式进行输出。
【输入】
python
【输出】
p
y
t
h
o
n
s = input("请输入一个字符串:") # 输入一个字符串
# 该行代码的作用是检测输入的值,可不加
print("输入的字符串s=",s,sep="")
for i in s: # 对字符串中的字符进行遍历
print(i) # 逐个输出字符,每个字符以换行符结束
【终端输出】
输入的字符串s=python
p
y
t
h
o
n
4. 循环输出
输入一个整数 nflush函数,输出所有小于 n 的非负整数 i 的平方( 0
限时特惠:本站每日持续更新海量设计资源,一年会员只需29.9元,全站资源免费下载
站长微信:ziyuanshu688