perlテキストでpython学習中

正規表現

pythonで正規表現を使うにはreモジュールを使って正規表現をオブジェクト型に コンパイルしてマッチさせることができるようになるみたい。 基本的な例で"day"という文字列が"today"という文字列にマッチするかを 確かめるなら文字列を走査して正規表現がマッ…

ファイル操作

perlでfile.txtというファイルを開くときはopenという関数を使って、 open(FILE, 'file.txt') or die "$!"; のようにすれば良いみたい。開くことができなかったときはエラーメッセージを出して 終了するようにしている。 openの最初の引数はファイルハンドル…

サブルーチンと関数

perlにおけるサブルーチンというものはpythonには無くて、 pythonではすべては関数として定義しなければならないみたい。 なのでperlのサブルーチンを定義するのをpythonの関数を定義することに 当てはめて練習してみる。 まずは2つの数値の平均値を求める…

mapによる繰り返し

リストや配列の各要素に対して何らかの操作を行い、その結果を 新たなリストで得たいときにはmap関数が便利らしい。 perlのmap関数は map { 各要素をつくる式 }リスト というように使うらしい。 例えば1〜9までの整数を要素として持つリストから 各整数を…

ハッシュと辞書型

perlのハッシュとはキーとそれに対応する値からなるデータ構造で 以下のように表すみたい。 my %hash = ( 'Taro' => 26, 'Hanako' => 23, 'Ichiro' => 32, ); pythonではハッシュに対応するのは辞書型で、 hash = {"Taro" : 26, "Hanako" : 23, "Ichiro" : 3…

配列とリスト

perlで配列を使って三つの数値の合計を計算するときは、 my @score = (64, 90, 75); my $sum = 0; foreach my $item (@score) { $sum = $sum + $item; } print $sum; とすると229と出力されるみたい。 これをpythonで処理するにはリストとsum関数を使って、 …

文字列処理関数

perlでは文字列の一部を切り出すときにはsubstr関数を使うようで、 例えば'Good morning'という文字列の最初の4文字を得るときは my $s = substr('Good morning', 0, 4); print $s; とすればGoodと返される。 pythonで同じ処理をするにはリストの要素を取り…

16進数文字列、8進数文字列の数への変換

perlでは16進数で書かれた文字列を数に直すには関数hexを使うようで、 print hex('FF'); とすると 255 と出力される。 8進数で書かれた文字列を数に直すには関数octを使うようで、 print oct('177'); とすると 127 と出力される。 pythonで同じ処理をするに…

10進数から16進数への変換

perlでは関数splintfを使うと、いろいろな書式で数を文字列に変換できるようで、 my $value = 255; my $str = splintf('%X', $value); print $str; とすれば FF と出力される。 pythonでは関数splintfは無いようなので、 value = 255 str = "%X" %value prin…