print() 函数 ---- 输出
1. 语法参考
print() 函数语法格式如下:
print(value,..., sep='', end='\n', file=sys.stdout, flush-False)
2. 快用锦囊
2.1 输出字符串
print() # 输出一个空行
print('') # 输出一个空行
print("没有伟大的愿望,就没有伟大的天才!") # 使用双引号将字符串括起来
# 使用三引号可多行输出字符,如三行输出的服务器登录界面
print(''' 登录服务器
管理员:__________________
密 码:__________________ ''' ) # 字符最前和最后用三引号
print('go big or go home') # 使用单引号将字符串括起来
print('go','big','or','go','home') # 字符之间用','分隔,则字符串用空格连接
print('go' 'big' 'or' 'go' 'home') # 字符之间不用“,”分隔,则字符串无空格连接
print('go' + 'big' + 'or' + 'go' + 'home') # 用加号 “ + ” 连接输出字符串
print('wwww','mingrisoft','com',sep='.') # 设置分隔符,字符之间用 “ ,”分隔
print('2020','7','24',sep='-') # 设置分隔符,字符之间用 “ - ” 分隔
print(50 * '=') # 一次性输出多个字符,使用数字、运算符和字符串
# 使用 chr() 函数,根据字符的ASCII码值,输出字符
print(chr(65)) # 大写字母的ASCII码值为65~90
print(chr(97)) # 小写字母的ASCII码值为97~122
print(chr(8544),chr(8545),chr(8546),chr(8547))
# 使用ord()函数将字符转换为对应的整数
print(ord('生'),ord('化'),ord('危'),ord('机'))
2.2 输出数值
print(1314) # 直接输出整数,可不带双引号,输出结果:1314
print(12.22) # 直接输出浮点数,输出结果:12.22
print(10 / 3) # 可以包含算术表达式,输出运算结果为:3.3333333333333335
print(100 * 3.13 + 60) # 可以包含算术表达式,输出运算结果为:373
print(2, 0, 2, 0) # 使用“,”连接要输出的数值,中间用空格连接。输出结果:2 0 2 0
print(192, 168, 1, sep='.') # 使用“,”连接输出数值,数值间用“,”分隔。输出结果:192.168.1.1
print(“广州恒大” + 43) # 不能直接使用“+”连接字符串和数值,会报错。一场信息为:
# 异常信息为: TypeError: can only concatenate str (not "int") to str
print("广州恒大" + str(43)) # 使用“+”连接字符串和数值时,数值要转换为字符串。输出结果:广州恒大43
print("广州恒大", 43) # 使用“,”连接字符串和数值,字符串和数值用空格分隔。输出结果:广州恒大 43
print("%e" % 120563332111098) # 使用操作符"%e" %格式化数值为科学计数法。输出结果:1.205633e+14
2.3 输出变量
stra= 'go big or go home' # 定义一个字符串变量stra
print(stra) # 输出变量stra的值
num = 27 # 定义一个数值型变量num
print(num) # 输出变量num的值
stra= '你若盛开' # 定义字符串变量stra
strb= '蝴蝶自来' # 定义字符串变量strb
print(stra,strb) # 使用“,” 连接变量stra和strb,中间用空格符分隔
print(stra + '\n' + strb) # 使用“\n” 连接变量stra和strb,换行分隔
print(stra + strb) # 使用“+” 连接变量stra和strb,直接连接无空格
print(stra + '\n' , strb) # 添加 “\n” 换行后,使用 “,” 连接的字符串前面仍然有一个空格
name = ['杨过','临安','1224','小龙女']
print(name)
print('--'.join(name)) # 使用 “--” 连接列表内数据
print(' '.join(name)) # 使用空格 “ ” 连接列表内数据
print(''.join(name)) # 直接连接列表内数据
word = '世界那么大'
name = '黄蓉'
how = '想出去看看!!'
print(word, name, how) # 用 “,” 连接变量,中间用空格分隔
print(word, name, how,sep='.') # 设置分隔符为 “.”
print(word, name, how,sep='****') # 设置分隔符为 “****”
word = ["南京", "苏州", "上海", "杭州", "宁波"]
for item in word: # 遍历列表
print(item) # 输出每个列表元素
word = ["南京", "苏州", "上海", "杭州", "宁波"]
for item in word: # 输出列表变量的数据到一行
print(item + ">>", end="") # 元素之间用 ”>>“ 连接
team = "广州恒大"
points = 63
print(team, points) # 使用“,”可以直接链接字符串变量和数字变量
# 使用 ”+“ 链接字符串变量和数值变量前,必须先格式化数字变量
print(team + str(points))
2.4 特殊文字、符号、标志输出
print(chr(0xf043)) # 0xf043是16进制数
# 直接使用字符集的编码,输出多个特殊符号
print(chr(0xf021), chr(0xf035), chr(0xf046), chr(0xf051), chr(0xf067), chr(0xf0e5), chr(0xf0f2))
for i in range(0xf035 , 0xf045):
print(chr(i), end=",")
print(chr(8592))
print([chr(i) for i in range(8710 , 8719)]) # 输出多个特殊字符
2.5 将多次输出内容在一行显示
for x in range(0, 10): # 设置输出内容区间为0~9
print(x, end='') # 输出数字用空格间隔输出到一行
for x in range(0, 10): # 设置输出内容区间为0~9
print(x, end='+') # 输出数字用加号连接
print("? = 100") # 输出结果和原输入内容形成计算题
2.6 输出指定位数编号
instr = input("请输入一个数字:")
print(instr.zfill(5)) # 输出5位数字编号
for i in range(1 , 20): # 设置输出区间位1~19
n = str(i) # 将数字转换为字符串
s = n.zfill(3) # 将格式化的编号赋值给s
print(s) # 输出s
instr= input("请输入一个数字:")
print(format(instr, '0>5')) # 输出5位数字编号
print(format(instr, '*>5')) # 输出5位字符串,空位用*填充
print(format(instr, '>5')) # 输出5位字符串,空位用空格填充
2.7 进制输出
x= 112
print("%o" %x) # 使用操作符输出八进制数
print("%x" %x) # 使用操作符输出十六进制数
print("nHex = %x, nDec = %d, nOct = %o" %(x, x, x)) # 输出十六进制、十进制、八进制数
print(bin(x)) # 使用bin()函数输出二进制数
print(oct(x)) # 使用oct()函数输出八进制数
print(hex(x)) # 使用hex()函数输出十六进制数
x= 112
print("{0:d}".format(x)) # 使用format()函数输出十进制数
print("{0:x}".format(x)) # 使用format()函数输出十六进制数
print("{0:o}".format(x)) # 使用format()函数输出八进制数
print("{0:b}".format(x)) # 使用format()函数输出二进制数
print("int: {0:b}; hex:{0:x}; oct: {0:o}; bin: {0:b}".format(x)) # 综合输出进制数
print("二进制: {0:#b}; 八进制:{0:#o}; 十进制: {0:#d}; 十六进制: {0:#x}".format(x)) # 综合输出带符号的各进制数
2.8 输出彩色文字或背景
print('\033[1;31m Stay hungry,Stay foolish!\033[0m') # 红色前景色输出名言
print('\033[1;31;45m 求知若饥,虚心若愚!\033[0m') # 绿色前景色输出名言,背景色为紫色
print('go big or go\033[1;35 home \033[0m!') # 设置文字中home紫色前景色显示
print('go big or go\033[1;32;43m home \033[0m!') # 设置文字中home绿色前景色,黄色背景显示
print('\033[1;31;45m go big or go home \033[0m') # 设置文字红色前景色,蓝色背景色显示
2.9 对齐输出数据
team = "格陵兰岛"
print(team.ljust(10)) # 左对齐字符串,用空格号占位
print(team.ljust(10,'*')) # 左对齐字符串,用*号占位
print(team.rjust(10,'*')) # 右对齐字符串,用*号占位
print(team.rjust(10)) # 右对齐字符串,用空格号占位
print(team.center(10)) # 中间对齐字符串,用空格号占位
print(team.center(10,'*')) # 中间对齐字符串,用*号占位
s = "多特蒙德"
print(format(s, '*>20')) # 右对齐字符串, ”*“ 为号占位符, ”>“ 为右对齐符号, 20宽度
print(format(s, '#>20')) # 作对齐字符串, ”*“ 为号占位符, ”<“ 为左对齐符号, 20宽度
print(format(s, '^20')) # 中间对齐字符串, 空格 ” “为占位符, ”^“ 对齐符号, 20宽度
car = [[1, "奔驰", 489163], [2, "宝马", 455051], [3, "奥迪", 445300]]
for item in car: # 循环读取列表数据
tup = '{0:0>3}\t{1:*^12}\t{2:$>12.2f}' # 设置对齐格式和占位符
print(tup.format(item[0], item[1], format(item[2]))) # 输出数据未设置格式
2.10 输出内容到文件
设置参数file为目标文件名称,输出需要输出的内容到该文件。代码如下:
fp = open('mingrisoft.txt', 'a+') # "a+"以读写模式打开文件
text = "go big or go home"
print(text, file=fp) # 输出到文件中
fp.close()