pythonで複素数を扱う

以下のように虚部はjを用いる。

1j * 1j
#(-1 + 0j)

以下のようにcomplex関数を使っても生成できる。

complex(1, 5)
#(1 + 5j)

掛け算をもっと。

(2 + 1j) * (4 + 3j)
#(5 + 10j)

割り算してみる。

(2 + 1j) / (4 + 3j)
#(0.44 - 0.080000000000000002j)

しゅごい!(ノ*゚▽゚)ノ

pythonを触ってみる

さっそく触る!((o( ̄ー ̄)o))

from math import sqrt;
sqrt(pow(2, 4))# 4.0

コメントは#から行末までですな。pythonでは;セミコロンを書かなくても良い=3

■関数定義

以下のようにする。

def powpow(x):
    return pow(pow(x, 2), 2)
powpow(2)#16

ふむふむ。

■クラス定義

class Dog:
    def cry(str):
        return 'bow'
pochi = Dog()
pochi.cry()#'bow'

なるほど!ヾ(@^▽^@)ノ

■結論

perlより好きだ★

Pythonで内部エンコーディングを指定する

■コード

先頭に以下の記述をする。

# -*- coding: utf-8 -*-
import sys
reload(sys)
sys.setdefaultencoding('UTF-8')

エラー

以下のようにreloadしないとエラーになる。

# -*- coding: utf-8 -*-
import sys
sys.setdefaultencoding('UTF-8')
"""
Traceback (most recent call last):
  File "<stdin>", line 1, in ?
AttributeError: 'module' object has no attribute 'setdefaultencoding'
"""

ちなみにPHPだと以下のようになる。

mb_internal_encoding('utf-8');

■入出力の文字コード

標準入出力の文字コードだって指定したい。

import sys
import codecs

sys.stdin  = codecs.getreader('utf_8')(sys.stdin)
sys.stdout = codecs.getwriter('utf_8')(sys.stdout)

まぁ、コンナ感じ。

■ファイル

あとはファイルの文字コードがあるね。

import codecs

fin  = codecs.open('hoge.txt', 'r', 'utf_8')
fout = codecs.open('fuga.txt', 'w', 'utf_8')

PHPだとmb_convert_encodingだよね。

■結論

日本語ってめんどい。。。゜(´□`。)°゜