Rumah > pembangunan bahagian belakang > Tutorial Python > 详解Python的标准输入输出

详解Python的标准输入输出

零到壹度
Lepaskan: 2018-04-02 15:35:11
asal
4290 orang telah melayarinya


本篇文章给大家分享的是详解Python的标准输入输出,内容挺不错的,希望可以帮助到有需要的朋友

一、标准输入输出

1、打印到屏幕

产生输出的最简单方法是使用print语句,可以通过用逗号分隔零个或多个表达式。这个函数传递表达式转换为一个字符串,如下结果写到标准输出 -

print ("Python is really a great language,", "isn't it?")
Salin selepas log masuk

这将产生以下结果标准屏幕上 :

Python is really a great language, isn't it?
Salin selepas log masuk

2、读取键盘输入

Python2中有两个内置的函数可从标准输入读取数据,它默认来自键盘。这些函数分别是:input() 和 raw_input()。
但在Python3中,raw_input()函数已被弃用。此外, input() 函数是从键盘作为字符串读取数据,不论是否使用引号(”或“”)。
示例:

x=input("请输入x=")
y=input("请输入y=")
z=x+yprint("x+y="+z)
Salin selepas log masuk

运行结果:

请输入x=111
请输入y=222
x+y=111222
Salin selepas log masuk

可以看到input的返回值永远是字符串,当我们需要返回int型时需要使用int(input())的形式,例如:

x=int(input("请输入x="))y=int(input("请输入y="))
z=x+yprint("x+y=",z)
Salin selepas log masuk

运行结果如下:

请输入x=111
请输入y=222
x+y= 333
Salin selepas log masuk

3、格式化输出

一般来说,我们希望更多的控制输出格式,而不是简单的以空格分割。这里有两种方式:
第一种是由你自己控制。使用字符串切片、连接操作以及 string 包含的一些有用的操作。
示例:

# 第一种方式:自己控制 for x in range(1, 11): 
  print(str(x).rjust(2), str(x*x).rjust(3), end=' ') 
  print(str(x*x*x).rjust(4))
Salin selepas log masuk

输出:

 1   1    1
 2   4    8
 3   9   27
 4  16   64
 5  25  125
 6  36  216
 7  49  343
 8  64  512
 9  81  729
10 100 1000
Salin selepas log masuk

第一种方式中,字符串对象的 str.rjust() 方法的作用是将字符串靠右,并默认在左边填充空格,所占长度由参数指定,类似的方法还有 str.ljust() 和 str.center() 。这些方法并不会写任何东西,它们仅仅返回新的字符串,如果输入很长,它们并不会截断字符串。
第二种是使用str.format()方法。
用法:它通过{}:来代替传统%方式

  • 使用位置参数

要点:从以下例子可以看出位置参数不受顺序约束,且可以为{},只要format里有相对应的参数值即可,参数索引从0开,传入位置参数列表可用*列表的形式。

>>> li = ['hoho',18]
>>> 'my name is {} ,age {}'.format('hoho',18)
'my name is hoho ,age 18'
>>> 'my name is {1} ,age {0}'.format(10,'hoho')
'my name is hoho ,age 10'
>>> 'my name is {1} ,age {0} {1}'.format(10,'hoho')
'my name is hoho ,age 10 hoho'
>>> 'my name is {} ,age {}'.format(*li)
'my name is hoho ,age 18'
Salin selepas log masuk
  • 使用关键字参数

要点:关键字参数值要对得上,可用字典当关键字参数传入值,字典前加**即可

>>> hash = {'name':'hoho','age':18}
>>> 'my name is {name},age is {age}'.format(name='hoho',age=19)
'my name is hoho,age is 19'
>>> 'my name is {name},age is {age}'.format(**hash)
'my name is hoho,age is 18'
Salin selepas log masuk
  • 填充与格式化

格式:{0:[填充字符][对齐方式 <^>][宽度]}.format()

>>> &#39;{0:*>10}&#39;.format(20)  ##右对齐
&#39;********20&#39;
>>> &#39;{0:*<10}&#39;.format(20)  ##左对齐
&#39;20********&#39;
>>> &#39;{0:*^10}&#39;.format(20)  ##居中对齐
&#39;****20****&#39;
Salin selepas log masuk
  • 精度与进制

>>> &#39;{0:.2f}&#39;.format(1/3)
&#39;0.33&#39;
>>> &#39;{0:b}&#39;.format(10)    #二进制
&#39;1010&#39;
>>> &#39;{0:o}&#39;.format(10)     #八进制
&#39;12&#39;
>>> &#39;{0:x}&#39;.format(10)     #16进制
&#39;a&#39;
>>> &#39;{:,}&#39;.format(12369132698)  #千分位格式化
&#39;12,369,132,698&#39;
Salin selepas log masuk
  • 使用索引

>>> li
[&#39;hoho&#39;, 18]
>>> &#39;name is {0[0]} age is {0[1]}&#39;.format(li)
&#39;name is hoho age is 18
Salin selepas log masuk

Atas ialah kandungan terperinci 详解Python的标准输入输出. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Label berkaitan:
sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan