Python3输入输出与字符串格式化

目录

输入输出

键盘输入

输出

字符串格式化

format格式化

参数映射

对齐方式与精度

`%`格式化


Python3中使用input从键盘上获取输入,print来输出;format进行格式化。

输入输出

键盘输入

Python提供了input()内置函数从标准输入读入一行文本;可以接收一个Python表达式作为输入,并将运算结果返回。

input(prompt=None,/)

  • prompt:提示信息

  • 返回str:根据需要转换为所需类型;通过eval可处理输入表达式

输入示例:

# 输入必须满足python表达式格式要求:必须使用逗号分割的两个值
m,n=eval(input("input two number: ")) # 'abc', 123
print(m,n)  # abc 123

# 只能输入整数值
count = int(input("count: "))
print(count)

输出

Python中使用print输出值,也可以通过文件对象(引用sys.stdout)的write方法输出。
print(*objects,sep='',end='\n',file=sys.stdout,flish=flase)
参数说明:

  • objects:可以一次输出多个对象(多个对象时,用逗号分隔);

  • sep:多个对象时他们之间的分隔符,默认值是一个空格;

  • end:以什么结尾,默认值是换行符\n

字符串格式化

字符串的格式化方法分为两种为:占位符(%)和format方式。

format格式化

使用{}来标识格式化字符串,后面使用format列出对应变量。
{[name][:][[fill]align][sign][#][0][width][,][.precision][type]}

参数映射

name标识后面参数,可以:

  • {}:自动顺序填充;此方式不能与索引方式混用;

  • 索引{0}:按索引填充,第一个参数为0;

  • 使用名称{name}:通过名称匹配,参数必须是name=value样式;

  • 参数是复杂类型时,可直接操作子元素:如{0[0]}{a[first]}

print("{act} {lan}{0}".format(3,lan="python",act="study")) # study python3

print("{}:{}".format('192.168.1.100',80)) # 192.168.1.100:80

print("{a[0]} {a[1]}{a[2]}".format(a=["study","python",3])) # study python3

print("{dict[act]} {dict[lan]}{dict[ver]}".format(dict={"act":"study","ver":"3","lan":"python"})) # study python3

对齐方式与精度

填充与对齐方式:

  • algin ^、<、>:分别是居中、左对齐、右对齐

  • fill:填充内容,默认为空格

  • type:指定类型,参考%格式化(如:x十六进制,d整数,f浮点数等)

print('{:*^10}'.format('分割线')) # ***分割线****
print('{0:.2f}'.format(12.567)) # 12.57
print('{0:b}'.format(10)) # 1010
print('{0:x}'.format(29)) # 1d
print('{:e}'.format(12369132698)) # 1.236913e+10

`%`格式化

Python传统使用%格式字符串:

print('%s %s%d' % ('study', 'Python', 3)) # study Python3
print('%s' % 'abc') # abc

格式符说明:

格式说明
%%百分号标记
%c字符及其ASCII码
%s字符串
%d有符号整数(十进制)
%u无符号整数(十进制)
%o无符号整数(八进制)
%x无符号整数(十六进制)
%X无符号整数(十六进制大写字符)
%e浮点数字(科学计数法)
%E浮点数字(科学计数法,用E代替e)
%f浮点数字(用小数点符号)
%g浮点数字(根据值的大小采用%e或%f)
%G浮点数字(类似于%g)
%p指针(用十六进制打印值的内存地址)
%n存储输出字符的数量放进参数列表的下一个变量中


版权声明:本文为alwaysrun原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。