Pythonの標準入出力について詳しく解説

零到壹度
リリース: 2018-04-02 15:35:11
オリジナル
4272 人が閲覧しました


この記事は、Python の標準入力と出力について詳しく説明しています。この内容は、困っている人に役立つと思います

1。 screen

出力を生成する最も簡単な方法は、print ステートメントを使用することです。これは、0 個以上の式をカンマで区切ることで実行できます。この関数は式を文字列に渡し、次の結果を標準出力に書き込みます -

print ("Python is really a great language,", "isn't it?")
ログイン後にコピー

これにより、標準画面に次の結果が生成されます:

Python is really a great language, isn't it?
ログイン後にコピー

2. キーボード入力を読み取ります

には 2 つの組み込み関数があります。 Python 2 は、標準入力 (デフォルトではキーボードから入力) からデータを読み取ります。これらの関数は、input() と raw_input() です。

しかし、Python3 では、raw_input() 関数は非推奨になりました。また、input() 関数は、引用符 (" または "") が使用されているかどうかに関係なく、キーボードからのデータを文字列として読み取ります。

例:

x=input("请输入x=")
y=input("请输入y=")
z=x+yprint("x+y="+z)
ログイン後にコピー

実行結果:

请输入x=111
请输入y=222
x+y=111222
ログイン後にコピー

の戻り値が返されることがわかります。 input は常に string で、int 型を返す必要がある場合は、 int(input()) の形式を使用する必要があります。例:

x=int(input("请输入x="))y=int(input("请输入y="))
z=x+yprint("x+y=",z)
ログイン後にコピー

実行結果は次のとおりです:

请输入x=111
请输入y=222
x+y= 333
ログイン後にコピー

3. フォーマットされた出力

一般的に、単にスペースで分割するのではなく、出力形式をより詳細に制御する必要があります。

最初の方法は、文字列のスライス、連結操作、および文字列に含まれるいくつかの便利な操作を使用します。

# 第一种方式:自己控制 for x in range(1, 11): 
  print(str(x).rjust(2), str(x*x).rjust(3), end=' ') 
  print(str(x*x*x).rjust(4))
ログイン後にコピー

出力:
 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
ログイン後にコピー

最初のメソッドでは、文字列オブジェクトの str.rjust() メソッドは、デフォルトで文字列を右に移動し、左のスペースを埋めます。長さはパラメータで指定されます。メソッドは str.ljust( ) と str.center() です。これらのメソッドは何も書き込まず、新しい文字列を返すだけで、入力が長い場合でも文字列を切り捨てません

2 つ目は、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'
ログイン後にコピー
  • 使用关键字参数

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

>>> 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'
ログイン後にコピー
  • 填充与格式化

格式:{0:[填充字符][对齐方式 <^>][宽度]}.format() 位置パラメータの使用

重要なポイント: 次の例は、位置パラメータが順序の制約を受けず、形式内に対応するパラメータ値がある限り、{} にすることができることを示しています。パラメータ インデックスは 0 から始まります。受信する位置パラメータ リストは次のとおりです。 * リスト
    >>> &#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;
    ログイン後にコピー
  • の形式にしてください。

    キーワード パラメータを使用する
  • ポイント: キーワード パラメータの値は、前に ** を追加するだけで一致する必要があります。辞書

    >>> &#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;
    ログイン後にコピー

入力と書式設定🎜🎜🎜 🎜フォーマット: {0:[パディング文字][配置<^>][幅]}.format()🎜
>>> li
[&#39;hoho&#39;, 18]
>>> &#39;name is {0[0]} age is {0[1]}&#39;.format(li)
&#39;name is hoho age is 18
ログイン後にコピー
🎜🎜🎜精度と基礎🎜🎜🎜rrreee🎜🎜🎜 インデックスの使用🎜🎜🎜rrreee

以上がPythonの標準入出力について詳しく解説の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート