タグ

TipsとPythonに関するyifeのブックマーク (10)

  • python2.xでの日本語(マルチバイト文字)問題を一掃する!(その1) — ExSoft

    python2.xを使い始めて、必ずと言って良いほど遭遇するのが日語(マルチバイト)関連の問題です。 ネットで同様のケースを調べて、あまり理解をせずに、対処療法的にその場の問題を回避している人も多いように思いますが、一度腰を据えて理解すれば、それほど難しくないですし、python以外の言語にも応用ができます。 マルチバイト問題については、概念だけではなく、実際に手を動かし、目で確かめる(文字コードそのものを見る)事が重要です。 今回は、python2.xで遭遇する文字コード関連のエラーを実際に発生させ、その理由を理解した上で対処を行ってみましょう。 文字コードの定義 ケース1 [ 再現 ] pythonスクリプトファイルのencodingをcp932にし、以下を記述します。 ustr = u'い' [ 現象 ] SyntaxError: Non-ASCII character '\x8

  • Pythonを書き始める前に見るべきTips - Qiita

    Pythonを使ってこの方さまざまな点につまずいたが、ここではそんなトラップを回避して快適なPython Lifeを送っていただくべく、書き始める前に知っておけばよかったというTipsをまとめておく。 Python2系と3系について Pythonには2系と3系があり、3系では後方互換性に影響のある変更が入れられている。つまり、Python3のコードはPython2では動かないことがある(逆もしかり)。 Python3ではPython2における様々な点が改善されており、今から使うなら最新版のPython3で行うのが基だ(下記でも、Python3で改善されるものは明記するようにした)。何より、Python2は2020年1月1日をもってサポートが終了した。よって今からPython2を使う理由はない。未だにPython2を使う者は、小学生にもディスられる。 しかし、世の中にはまだPython3に

    Pythonを書き始める前に見るべきTips - Qiita
  • fabric でエラー時のロールバック処理をする - Qiita

    ところで先日、ぼくの投稿を友人に見てもらう機会があったのですが、 「キモイ、写真がキモイ。ほんとキモイよ?今まで誰も指摘してくれなかったの?」 との絶賛コメントをいただきました。 fabric はシンプルでいて、とても強力なツールです。 しかし、それは使い方によっては危険なツールでもあるということです。 特にぼくのような、キモイ人間のクズが使うときには細心の注意を払う必要があります。 今日もぼくが番環境に妙なものをデプロイしないか、 奇妙な人たち(上司ほか)が手錠をジャラジャラいわせながら監視しています。 気をつけないと。 ただ、どんなに気をつけていてもエラーというやつは起こるわけで、 だから色々ぶっ壊さないようにエラーハンドリングはちゃんとしてあげないといけません。 設定ファイルを編集した後にどこかでエラーが出たら、 ファイルだけ変えてるせいで2度とデーモンが起動しなくなった、とか、

    fabric でエラー時のロールバック処理をする - Qiita
  • pipの使い方 (2014/1バージョン) — そこはかとなく書くよん。 ドキュメント

    pipの使い方 (2014/1バージョン)¶ 以前 pipの使い方 と いう記事を書いたのですが、これは2011年の1月と、ちょうど3年前です。これ から随分変わったので、ここでもう一度まとめたいと思います。 pip: http://www.pip-installer.org/ ここで述べているpipのバージョンは1.5です。お使いのpipのバージョンが古い場合は pip install -U pip として、更新してください。 警告 大きな変更点: pip 1.5から"pre"や"b"などがバージョンに付いているパッ ケージはデフォルトで検索やインストールの対象からはずされました。その ため、1.5未満のバージョンのpipでインストールしたパッケージが1.5では 入らない場合があります。 --pre を付けることで、これらのバージョンを入れることができます。

  • pipの使い方 - そこはかとなく書くよ。

    注意 この内容はすでに古くなっています。 pipの使い方 (2014/1バージョン) を参照してください。 pipとは、Pythonにおけるパッケージ管理システムです。easy_installというツールもあるのですが、pipはこのeasy_installを置き換えるものとして開発されています。rubyのgemperlのcpan的な位置づけです。 同じパッケージ管理ツールとしてsetuptools置き換えのdistributeというものもあるのですが、こちらはsetuptools全体を置き換えるものとして開発されており、pipはsetuptoolsの一部であるeasy_installを置き換える形です。 なお、現在のpipのバージョンは0.8.2で、このエントリはこのバージョンを使っています。 なにかおかしい点があれば、ご指摘ください。 > 識者の方々 pipのinstall まずはea

    pipの使い方 - そこはかとなく書くよ。
  • Pythonの環境設定でむかついてる人はとりあえずこれをコピペで実行してください - YAMAGUCHI::weblog

    はじめに こんにちは、Python界の情弱です。最近は、以前に比べてPythonを触る人が増えてきたような印象ですが、それでもやれeasy_installだ、やれvirtualenvだと言われても、どうやって設定したらよくわからない、という発言をちらほら見かけています。 でもぶっちゃけ超簡単なので、とりあえず初めてPythonの環境設定する人はこれをコピペで動かして下さい。 (2017.01.26追記) 注意:この記事はもう古いので、Python2をいまから使い始めるなんていう奇特な人以外は次の記事を読んで下さい。 ymotongpoo.hatenablog.com 要点 はまりどころは多分次のどれかだと思う Pythonのバージョンをどれ使っていいかわからない 「easy_installを使え」と言われるがeasy_installというパッケージが見つからない virtualenvの入れ

    Pythonの環境設定でむかついてる人はとりあえずこれをコピペで実行してください - YAMAGUCHI::weblog
  • 何段にも深くなるループを絶対に一段で書く方法 - 今川館

    ループの中でループを回す処理は読みにくい 例えば友達が5人いて、サンドイッチが3種類あって、2種類の飲み物を配る処理を作るとします。 こういう場合、for文を何段にもネストするプログラムを書かざるを得ないときがありますよね。 for friend in friends: for sandwich in sandwiches: for drink in drinks: do_something(friend, sandwich, drink) そもそも、こういうプログラムを書く前は、当にそういう処理で正しいのか考えた方がいいですが、とにかくこんなコードは読みにくいです。 ループの中でループを回すプログラムを字下げして書くことが読みにくさに寄与していると思うのですが、pythonだと字下げは必須なので悩ましいものです。 itertools.productを使えば絶対に1段で書ける しかし、こ

    何段にも深くなるループを絶対に一段で書く方法 - 今川館
  • さくらのレンタルサーバで Python 外部モジュールを使う

    お知らせ: 最近の事情に合わせて新しく書き直した「さくらのレンタルサーバに Python モジュールをインストール」のページを用意しました。今後はまずそちらをご参照下さい。(2013年2月8日) さくらインターネットの「さくらのレンタルサーバ」サービスで Python の外部モジュールを導入・利用するための覚え書きです。 イントロダクション 外部モジュールをホームディレクトリ下にインストールする インストールした外部モジュールをインポートする シェルから使う CGI から使う まとめ おまけ:CGI プログラムが動かない…… スクリプトの改行コードを確認する 改訂履歴 免責・ライセンス イントロダクション さくらインターネットのホスティングサービス、「さくらのレンタルサーバ」では、CGI として Python を利用できます。Python には標準モジュールのほかにも、PyPI などで豊富

  • IPythonって最高!

    【3.2】   TABキーで補完してくれる! In [12] sys. <-ここでTABキーを押すと下記のような一覧がでます。 In [12] sys.arg <-ここでTABキーを押すと「sys.argv」に変化します。 (つまり候補がユニークであれば補完が完了します。) 【3.3】   通常のシェルコマンドも使える! このように、「!」マークのあとにコマンドプロンプトで 使っているコマンドがそのまま使えます。 もちろん、フォルダ名やファイル名に対してもTAB補完が効きます! このおかげで、コマンドプロンプトと pythonのインタラクティブモードとの行き来が不要になります。 【3.5】   デバッグが簡単! In [19]: %pdb on Automatic pdb calling has been turned ON としておくと、コード実行中に補足されない

  • Python入門:デコレータとは

    前から常々思っていることだが、何かについて勉強する一番効率的な方法はそれを誰かに教えること。人に教えようとすると、それなりに準備をしなければならないし、自分の頭の中を整理しなければならない。また教える過程でするどい質問をされたり間違いを指摘されて、さらに勉強を強いられることもある。 私がこの手の「入門編エントリー」を書くのは、ほとんどの場合「自分自身の理解をより深めたい」ことが一番の目的であるが、ブログの場合、教室などと違って「その道の達人」みたいな人たちがツッコミを入れてくれるケースもしばしばあるので、そのメリットは何倍にもなる。 先日のクロージャに関するエントリーなどは良い例で、「そんな用途にはmemoizeというデコレータが便利」などの指摘がいただけだけであれを書いた価値があるというもの。 そこで、今日はPythonのデコレータに関して。デコレータがPythonという言語に導入された

  • 1