書式付き出力
プレースホルダ(%)
はじめに:
固定形式と印刷に情報を入力するようにユーザ:多くの場合、プログラム内のシーンがあります
このようなユーザー名と年齢を入力し、[次の形式を印刷するようにユーザーに要求するように:My name is xxx,my age is xxx.
明らかに、コンマスプライス、ユーザーの入力することができる最後に名前と年齢を持つ文字列を、指定された場所のXXXに配置されていない、との図はまた、strの文字列スプライシング(デジタル)変換、非常にでなければなりませんトラブルは、我々は試してみて下さい。
#代码:
name = 'lwx'
age = 19
print('My name is '+name+',my age is '+str(age))
print('sss'+',sss')
age = 19
print('My name is lwx,my age is '+str(age))
#结果:
My name is lwx,my age is 19
sss,sss
My name is lwx,my age is 19
上記のアプローチは、使用に面倒を厄介に見え、その後、次のようなプレースホルダを、使用する必要があります。
%S(すべてのデータ型用)
%のD(数だけタイプ用)
res = 'my name is %s,my age is %s'%('lwx','18') # %s(针对所有的数据类型)
print(res)
# my name is lwx,my age is 18
name = 'lwx'
age = 20
print('my name is %s ,my age is %s' %(name ,age)) # %s(针对所有的数据类型)
#执行结果:
my name is lwx ,my age is 20
age = 20
print('my age is %d' %(age)) # %d(仅仅针对数字类型
#执行结果:
my age is 20
# 传入字典
res = 'my name is %(name)s,my age is %(age)s'%{'name':'lwx','age':'18'}
print(res)
#执行结果:
# my name is lwx,my age is 18
二.formatフォーマット
別の形式の方法ではPython2の新機能:フォーマットへのフォーマットは、ここではその使用をご紹介します:
#代码:
name = 'lwx'
age = 20
print("hello,{}.you are {}.".format(name,age))
name = 'lwx'
age = 20
print("Hello, {1}. You are {0}-{0}.".format(age, name))
name = 'lwx'
age = 20
print("Hello, {name}. You are {age}-{age}.".format(age=age, name=name))
#结果:
hello,lwx.you are 20.
Hello, lwx. You are 20-20.
Hello, lwx. You are 20-20.
#代码
info_2= '我的名字是{0},{0},我的年龄是{1},{1}'.format('lwx','18')
#加入序号输出,{}中间的顺序对应后面format()中元素的顺序
print(info_2)
#执行结果
我的名字是lwx,lwx,我的年龄是18,18
三.F-stringは、フォーマットされました
比較すると、プレースホルダのようにして、フォーマットされたメソッドf-文字列のPython3.6新バージョン、理解することは比較的簡単で、お勧めします
#代码
a= input('你是我名字:')
b= input('你的年龄:')
res = f'我的名字是{a},我的年龄是{b}'
print(res)
#执行结果:
# 你是我名字:lwx
# 你的年龄:18
# 我的名字是lwx,我的年龄是18
name= 'lwx'
age = 20
print(
f'hello,{name}.you are {age}'
)
#执行结果:
#hello,lwx.you are 20
#大写的F也适用
name= 'lwx'
age = 20
print(
F'hello,{name}.you are {age}'
)
#执行结果:
#hello,lwx.you are 20
#数值应用
#数值倍数
age2 = 19
print(
f'{age2*2}'
)
#执行结果:38
#保留几位小数,并且四舍五入
salary = 99.6666
print(
f'{salary:.3f}'
)
#结果:99.667