読者です 読者をやめる 読者になる 読者になる

Python 3で小数点以下n桁を表示する

C/C++でいうprintf("%.20f", val)のように、小数点以下n桁を表示するには以下のように書く。これは小数点以下20桁を表示する例。 val = 1 / 3 print("{0:.20f}".format(val)) 結果は以下の通り。 0.33333333333333331483 この書き方苦手だ…

Python 3でm x nの2次元配列を定義する

たとえば3x5の2次元配列(要素はすべて0)を定義するには以下のように書く。 >>> matrix = [[0 for i in range(5)] for j in range(3)] printすると以下のようになる。 >>> print(matrix) [[0, 0, 0, 0, 0], [0, 0, 0, 0, 0], [0, 0, 0, 0, 0]]

Python 3に再入門中 - Dive Into Python 3 と Check iO

Pythonを本格的に習得しようと勉強を始めた。まずはPython 3のチュートリアルである 目次 - Dive Into Python 3 日本語版 を12章まで読み終わった。このチュートリアルは明快で面白く読み進められるのでかなり良かった。練習したことを忘れにくくするためにm…

Pythonでの式(Expression)と文(Statement)

Python2ではprintは文(Statement)であったが、Python3ではprintは式(Expression)になった、という記述をよく見る。しかしその違いがよく分からなかったので調べてみた。嘘を言っているかもしれない… 式(Expression) 式とは、評価されることによって、何らか…

Python 3ではまったこと

Python 2.xの知識もたいしてないのにもかかわらずPython 3.xのコードを書いていると、細かい違いでハマることが想像以上に多い。ここではそんなハマりどころをまとめておく。 printが文から式になった Python 2.xでは print "aaa"と書けたのに、Python 3.xで…

標準入力から文字を読み込む

プログラミングコンテストでPythonを使うとき用に、標準入力から文字や数字を読み込む方法をまとめる。 一行分を文字列として受け取る 標準入力が以下として aa bb cc dd ee以下のPythonコードで受けると、 #!/usr/bin/env python # -*- coding: utf-8 -*- s…

Pythonで、文字列の一部の文字を変更する

Pythonの文字列は、作成後に変更することができない。 例えば、ある文字列strの3文字目を'z'に書き換えるつもりで以下のようなコードを書くと #!/bin/env python # -*- coding: utf-8 -*- str = "abcdefghi" str[2] = 'z' 以下のようなエラーが出て実行がで…

Pythonではまったこと

インクリメント ある整数を格納した変数をインクリメントしようと、CやPerlを書く時と同じような気持ちで以下のコードを書いた。 num = 10 ++num print numエラーも警告もなく実行されるが、表示される値は意図に反して 10であった。Pythonではインクリメン…

Pythonでの正規表現の簡単なまとめ

Pythonでの正規表現の使い方を勉強した。Perlの正規表現とパターンの書き方はほぼ同じのようだけど、その他の部分はかなり違っている。あまり良いページが見つけられなかったので、正規表現 HOWTO — Python 3.3.3 ドキュメントを読んで簡単にまとめた。この…