スクリプトファイルとモジュール化¶ Pythonでは作成したプログラムを再利用するために、ファイルにコードを記述して実行することができます。 ここでは、スクリプトファイルの作成とモジュールについて説明していきます。 スクリプトファイルからの実行¶ Pythonのスクリプトファイルの拡張子は .py です。 hello.py という名前のファイルを以下の内容で作成してみます。
実験結果ファイルを指定するのどうしようかと思っていたら、記事があったのでメモ。 参照 Tkinter(tkFileDialog) を使ってファイルを開くダイアログを使ってみる。 ただ、自分の環境がpython 3なので Tkinter をtkinterに修正する。 # -*- coding: utf-8 -*- import tkinter import tkinter.filedialog tk = tkinter.Tk() tk.withdraw() # 小ウィンドウを表示しないようにする。 args = { “initialdir” : “c:/”, “filetypes” : [(“テキストファイル”, “*.txt”)], “title” : “テスト” } print (tkinter.filedialog.askopenfilename(**args)) inp
PythonのTkinterを使うことが多くなってきましたが,(私好みの)ほしい情報がまとまっているサイトがあまりなかったので,まとめていこうと思います. なお、Tkinterの勉強会をしたときにPython3系で作った資料が出てきたので、 ご興味のある方はどうぞ。 https://nnahito.gitbooks.io/tkinter/content/ *はじめに 私は手続き型人間です. オブジェクト指向は一切使いません. 得意言語はBASICとperlという,絶滅危惧種です. なので,オブジェクト指向最高!MVC最高!!と言われている方には,馴染まない,馴染めない書き方をしていると思いますので,ご了承ください. *そもそもTkinterとはなんぞや? Pythonで**GUIを組むことのできる**ツールキットのことです. これによって,PythonスクリプトをGUI形式で実行することが
公開されているコードで、先頭にインタプリタの指定があった場合、だいたい次のどっちかだ。 「#!/usr/bin/python」 「#!/usr/bin/env python」 見た感じでなんとなく想像はつくけど、どう違うのか調べてみた。pythonのメーリングリストのやり取りで、こんな解説を見つけた。 > 1) > #!!/usr/bin/python > 2) > #!/usr/bin/env python > など、2つのpythonの呼び出しがあるようですが > 何か違うのでしょうか? Unix 系のプラットフォームでは、ファイルの1行目に #!/usr/bin/python と書くと、2行目以降の内容が /usr/bin/python への入力として取り扱われます。 #!/usr/bin/env python と書くと、/usr/bin/env python を実行したときに起動す
スクリプトが置かれている OS を表す文字列が入っています。私の Windows 環境では文字列 win32 が入っていました。 追記: Mac 環境では文字列 darwin が入っていました。 スクリプトをターミナル(コマンドプロンプト)から実行したときの引数を返してくれます。 argv[0] はスクリプトの名前そのものが入っていることが多いようですが、実行の仕方によって異なることもあるようです。ふたつめの要素以降は、実行時のオプションやその他の引数が入っています。 ・・・以上です。 ちなみに、 Python コードが、他のファイルから読み込まれたモジュールではなく、スクリプトとして実行された場合を特定するには、 __name__ という名前を次のように調べることが多いです。
Pythonでバイナリデータ入力とバイナリデータ出力するクラスを作ってみました。 ちなみにPythonで作った初めてのクラスです。 from struct import * class ByteIO: def __init__(self, name, mode): enable_mode = ("rb","wb","ab") if mode not in enable_mode: raise Exception('ByteIO: file mode error. mode="' + mode + '" is unsupport.') self.file = open(name, mode) def __del__(self): self.close() def close(self): self.file.close() def writeLong(self, num): self.fil
UNIXネットワークプログラミング入門 作者: 雪田修一出版社/メーカー: 技術評論社発売日: 2003/06/05メディア: 単行本購入: 5人 クリック: 84回この商品を含むブログ (15件) を見る自分のようなネットワークプログラミング初心者には、この本はとても良い。言語はCだけど。本の中のサンプルコードに、誤りが(ほとんど*1)無いのが素晴らしい。長々とサンプルを入力した挙句、動かなかったということはよくあるが、デバッグできないと学ぶのが嫌になってしまうものだ。本の内容は、ソケットを使ったクライアント・サーバモデルによるネットワークプログラミングの入門。 7章まで読んだ。最後まで読み終わる前に、居ても立ってもいられず、Pythonで同じことをやりたいときには、どのような実装になるのかを調べてみた。 このへんを参考にして。 Recipe 52218: Message Passing
Python 3が後方互換性を捨ててでも求めたもの:よりPythonicなPythonを目指して(前編)(1/2 ページ) Python 3.0では、Python 2で書かれたスクリプトが動かなくなるような実装が行われた。なぜ、後方互換性を崩してまで大きな仕様変更を行ったのか。それは、PythonがよりPythonらしくあるためだ。 2008年12月4日、Python 3.0がリリースされました。これまで「Python 3000」や「Py3k」という愛称で呼ばれ、Pythonの次期メジャーバージョンとして開発されていたものです。 メジャーバージョンアップといっても、基本的な文法、インデントを使ったブロック表記や基本的な機能の多くはPython 2から引き継いでいます。Pythonの持つシンプルで一貫性のある設計思想を受け継ぎ、よりPythonicなPythonへと言語をステップアップさせる
『Fluent Python』を読みはじめた。面白いコラムが載っていたので紹介しよう。 __init__ のようなメソッドをどう呼ぶだろうか。私はアンダースコア二つではじまり、アンダースコア二つで終わるこれらのメソッドを special methods (スペシャルメソッド) と呼んでいる。Python コミュニティでは magic methods (マジックメソッド) と呼ばれることもある。 英語圏では __init__ を “under-under-init” のように発音する人も多いらしい。日本語圏も似たようなもので、私も「アンダーアンダーイニット」と表現する人を見たことがある。しかし、これでは __init と区別がつかないので、曖昧さが残る。もっと両側のアンダースコアを強調するため、こういうメソッドを最近では dunder methods と表現するらしい。つまり、 “Doubl
社会人になってからしばらくやっていなかった競技プログラミングを細々と再開してたりする。 主にAizu Online JudgeとAtCoderをやってたりしてて、言語は全部Pythonでやってる 理由はいくつかあって、 書いてて楽しい リスト周りの関数が強い 少なくとも自分がまともに使える言語の中では一番使いやすい リスト内包表記最高です(^q^) キモいコード書いて悦に入れる print(sum(list(map(int, input().split()))))みたいな Zen of Pytonなんてなかった てな感じ。 で、リハビリがてら簡単な問題をやっていて忘れてたことをメモ。 二次元配列をsortする 環境 Python3.4.1 1次元配列のsortはsort()もしくはsorted()を素直に使えば良い。 前者は配列が持つ関数で返り値が無し。 後者は配列の内容は変わらないが返り
ディープラーニングなバイトをするべく、Pythonのリハビリでもしつつ3系列に乗り換えるかなぁ、と思い、omo先生が勧めていた Fluent Pythonを読む。 http://shop.oreilly.com/product/0636920032519.do 自分はmobiで読んだ。 自分にとっては結構いまいちな所が多い本ではあったけれど、それでも他の選択肢を考えると現状では一番良い本と思う。 3系列への知識のアップデートは大分進んだ。 リハビリとしてもなかなか良かった。 という事で自分の目的は達成出来た。 良かった所 - coroutineはExpert Python Programmingよりずっとちゃんと書かれていて分かりやすかった。 - asyncio周辺は全然知らなかったので勉強になった。 - 言語的な所、特にメソッドの仕組み周辺はExpert Python Programmi
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く