渋谷ほととぎす通信

完全趣味でやってる技術メモ。※所属団体とは一切関係がありません。

Python忘れちゃったときメモ


この記事は僕がつまづいたら追記されていくスタイルとなります。

基本

対話型シェルを開始して終了する

pythonで始めて、exit()で終わる

キャスト

# int型キャスト
i = int(value)

# float型キャスト
f = float(value)

# 文字列へキャスト
str = str(value)

数字のprintの注意

i = number;
print(str(i))

文字列にキャストしないとエラー。

for文

for item in itemList:
    print(item)

if文

if a == b :
    # Do something.
elif c==d and e == f :
    # Do something.
else :
    # Do something.

&&||は使えません

クラス

クラス定義

class Hoge:
    x = 0
    name = "fuga"

インスタンス化

hoge = Hoge

newは不要

インクリメント、ディクリメント

# index++は使えません
index = index+1

文字列系

拡張子を抜いたパスを取得する

import os.path
# 拡張子を抜いたパスと拡張子文字列がタプルで返却される
nonExPath,ext = os.path.splitext(filePath)

文字列のsplit

path.split("/")

IndexOf的な処理

# ヒットしたindexが格納される。存在しない場合は-1
index = str.find('foo')

配列

要素追加

array.append(element)

要素数の取得

len(array)

日本語をつい買う時に記載する宣言

# -*- coding: UTF-8 -*-

システム系

コマンド引数取得

import sys

args = sys.argv
hoge = args[1]

処理を終了させる

import sys

sys.exit()

XMLを使用したい

以下サンプルコード例

import xml.etree.ElementTree as ET

# 指定パスのファイルをロードしてパース
tree = ET.parse(tpsPath)

# ルートノードを取得
root = tree.getroot()

# 複数同名ノード処理
for node in parentNode.iter('Hoge'):
    print(node.text)

# ノードの属性取得(例は属性名`type`の値を取得する)
attribName = node.attrib.get('type')

# ノード検索
dNode = node.find('A/B/C/D')

# ノード値の上書き
node.text="hogehoge"

# XMLファイル保存
tree.write(path, 'utf-8', True)

参考