
初心者ですが
def divide(x, y):
try:
print('%d/%d = %d' % (x,y,x/y))
except ZeroDivisionError:
print('ゼロ除算例外が発生しました。')
divide(6, 8)
divide(6, 0)
とすると
答えは
6/8 = 0
ゼロ除算例外が発生しました。とでるんですが。
print('%d/%d = %d' % (x,y,x/y))の意味は どういうことなんでしょうか
わかりやすく お願いいたします。%dなども意味が分かりません
No.1ベストアンサー
- 回答日時:
詳細は
https://note.nkmk.me/python-print-basic/
の「パーセント%を使うprintf形式」を参照してください。
print('%d/%d = %d' % (x,y,x/y))
は、
print('①/② = ③' % (P1,P2,P3))
としたとき
①へ整数を出力する
②へ整数を出力する
③へ整数を出力する
P1:①へ出力する値(x 値は6)
P2:②へ出力する値(y 値は8)
P3:③へ出力する値(x/y 値は0)
という意味です。
divide(6, 8)を実行すると
6/8 = 0 が表示されます。
divide(6, 0)を実行すると
x/yの演算で、0で割っているので
ゼロ除算例外が発生しました。 が表示されます。
No.2
- 回答日時:
??
そーとー古い本使って勉強してるの?
止めた方が良さそうなんだが。
例えば、現行のPython(3.8以上?)だと
>>> 6/8
0.75
>>>
となって0にはならない。
0になるのは相当前のPythonだぜ?
あと、
> print('%d/%d = %d' % (x,y,x/y))
これも現行のPythonにそぐわない。
今だとこう書く方が好まれる筈だ。
print(f'{x}/{y} = {x/y}')
だから、
> %dなども意味が分かりません
意味が分からなくて結構。
取り敢えず使ってる本が古そうなんで、Pythonの公式リファレンスで確認した方がいい。
フォーマット済み文字列リテラル:
https://docs.python.org/ja/3/reference/lexical_a …
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
(再質問)エクセルのマクロボ...
-
秀丸エディタで、同じ記号で囲...
-
CSSのhtmlへの紐付けについ...
-
Ruby 格納
-
Ruby newメソッド
-
1、Rstudioで回帰直線を求める...
-
a=2, b=1のとき”x=(a-b+3)%3”の...
-
Ruby require ライブラリー
-
ruby OpenURI::Meta
-
ruby while式
-
ruby loopメソッド 変数(再喝)
-
ruby 配列
-
ruby loopメソッド 変数
-
ruby クラス・オブジェクト・イ...
-
ルビー言語 ライブラリー 追記
-
ruby raise句
-
ruby begin句
-
ruby ensure句
-
ルビー言語 ライブラリー(再々...
-
ルビー言語 csvファイル 続き(...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
ラズパイ python文字の切り出し...
-
rubyプログラム中の標準出力を...
-
Rubyの構文?言語仕様?
-
Rubyで申(さる)を出力したい...
-
サロゲートペアの文字コード→文...
-
RubyプログラムでURLより取得し...
-
Rubyで%uxxxのデコード
-
rubyの誤差
-
Rubyで文字列の先頭を取りだす
-
Ruby net/httpについて
-
Rubyでwebページを取得するとき
-
COBOLのIFの入れ子について
-
小文字wと大文字Wの区別
-
VB.NETで階乗を求めるプログラ...
-
Windowsでchangenotifyしたい
-
Rubyのソースを難読化すると「u...
-
Ruby / passenger のインストー...
-
バーコードのチェックデジット...
-
Ruby on Railsでボタンをクリッ...
-
パソコンのフォルダ保存について
おすすめ情報