2013-09-01から1ヶ月間の記事一覧

ポートの開放

前回に引き続き、ポートの話です。 前回は、ポートがどうなってるかを確認するところまででしたので 今回は閉じているポートを開けるところまでやってみたいと思います。 ポートを開けるには、iptablesをいじる必要があるんですが、素人には難しい(らしい)…

ポートスキャン

開いているポートを調べる方法です nmapコマンドを使います なければ入れましょう [farmedgeek@Mint ~]$ sudo apt-get install nmap 空いているポートの一覧を出してくれます [farmedgeek@Mint ~]$ nmap 127.0.0.1 Starting Nmap 6.00 ( http://nmap.org ) a…

csv変換スクリプト

csv変換スクリプト 任意のデリミタで区切られたファイルをcsvに変換するスクリプトです ./to_csv.py こういうファイルがあるとします [farmedgeek@Mint ~/python]$ cat input.txt no name date num 1 spam-man 1990/03/10 32 2 egg-man 1989/07/31 2 3 ham-m…

addとcommit

git

今日はちょっとPythonから離れてgitを触ってみます。 当方のステータス ・gitがバージョン管理ツールなのは知ってる ・which git ってやるとパスが通ってるのはわかる ・でも具体的な使い方はわからない ・subversionなら使ったことある 構造 ローカル ↓add …

クラス

クラス 見よう見まねでクラスを作ってみた phoneクラス ./phone.py #!/usr/bin/python # coding:utf-8 class Phone: #コンストラクタ def __init__(self,maker): self.maker = maker #デバイス取得関数 def getDevice(self): if self.maker == 'apple': retu…

大文字小文字

文字列を大文字や小文字にする 引数で渡された文字列を大文字・小文字に変換する ./upper_lower.py #!/usr/bin/python # coding:utf-8 import sys argsv = sys.argv instr = argsv[1] print instr.upper() print instr.lower() 実行結果 [farmedgeek@Mint ~/…

文字列を左揃えにする

テキストデータの位置整形 リスト内の文字列を出力し、その後ろに連番を振りたい時、そのままやるとこうなってしまいます。 ./just.py #!/usr/bin/python # coding:utf-8 list = ['spam','hitman','ham','OscarWylde'] # そのまま出力 i = 0 for word in lis…

置換スクリプト

ファイルを読み込んで特定の文字列を置換するスクリプト ./replace.py 置換処理自体はreplace関数を使っています #!/usr/bin/python # coding:utf-8 import sys text_old = sys.argv[1] # 置換前文言 text_new = sys.argv[2] # 置換後文言 input_file = sys.…

関数

関数 細々と単発のスクリプトを書いてきましたが この辺で関数を作ってみたいと思います。関数は def によって定義することができます。 ここでは、引数に渡された数だけ'spam!'を連呼する関数を定義して それを呼び出してみます。 ./def_func.py #!/usr/bin…

文字の結合

文字列の結合 文字列を結合したい場合、どうするか。 結論からいうと、join関数を使うのが一番いいみたいです。 ./join.py #!/usr/bin/python # coding:utf-8 a='spam' b='ham' c='eggs' # '+'でつないでみる abc1 = a+','+b+','+c print abc1 # joinを使う …

文字列という配列

文字列の扱い 文字列はただのシーケンスです ./string.py #!/usr/bin/python # coding:utf-8 spam='Interesting!' #普通に出力してみる print spam #文字列を配列として扱ってみる for c in spam: print c, else: print #ただの配列なのでスライスもできる p…

連想配列

辞書(連想配列) JavaでいうところのHashMapですね。 キーを指定して値を格納したり、取得したりするアレです。 ./dict.py #!/usr/bin/python # codinf:utf-8 #辞書を定義{キー:要素} dict={'eat':'ate', 'sleep':'slept', 'play':'played'} #キーを指定 pr…

forループ(回数指定)

「n回処理を回す」ループ ./for_in_range.py #!/usr/bin/python # coding: utf-8 n=10 for x in range (0,n): print x 実行結果 [farmedgeek@Mint ~/python]$ ./for_in_range.py 0 1 2 3 4 5 6 7 8 9 [farmedgeek@Mint ~/python]$ 単純なテストデータの作成…

forループ(リスト)

処理中に定義されたリストを使ってループを行う ./for.py #!/usr/bin/python # coding:utf-8 list = ['spam','ham','eggs'] for x in list: print x 実行結果 [farmedgeek@Mint ~/python]$ ./for.py spam ham eggs [farmedgeek@Mint ~/python]$ 動的に作成し…

ファイル読み込み

外部ファイルを1行ずつ読み込んで出力するスクリプト こういうcsvファイルを読み込んでみます [farmedgeek@Mint ~/python]$ cat ~/python/warehouse/spam.csv No,id,count,date 1,spam01,25,2009/03/01 2,spam02,122,2012/07/23 3,ham01,9,1999/01/01 4,egg…

配列(タプル)

今日はタプル(変更不可な配列)について リストとタプルの定義の違い list = [0,1,2] #リストは角カッコ tuple = (0,1,2) #タプルは丸カッコ ./tuple.py #!/usr/bin/python # -*- coding: utf-8 -*- #タプルを定義 tuple = (1,2,3,4,5,6,7,8,9,10) #タプル…

配列(リスト)

pythonの配列には リスト(変更可能な配列) タプル(変更不可な配列) の2種類あります。タプルの方が、静的なぶん処理は早いようなので 変更の必要がないものであれば、なるべくタプルを使ったほうが エコなプログラムになるみたいです。まずリストについ…