えびしブログスマートフォン用の表示で見るえびしブログ〜サーバーは魔法で動いているわけではない〜この広告は、90日以上更新していないブログに表示しています。2014-07-09Pythonでリストの深いコピーPythonPythonのリストの代入は参照渡しなので、普通に代入すると内容は同じものを指します。id(fuga)4359788304>>>参照を渡すだけでなく、複製したい場合は以下のようなやりかたでできます。id(moga)4359328544ただし、リストの中身が辞書のような参照先のあるオブジェクトである場合は、上記の方法でリストのコピーができても、中身の辞書は参照先が渡されるためコピーできません。id(fuga[0])140553539258480中身もコピーしたい場合はcopyモジュールのdeepcopy関数を利用します。id(fuga[0])140553539260496こういうコピーを「深いコピー」というそうです。「ちゃんとリストをコピーしたはずなのに中身の辞書が同じものを指してるっぽい!なんで??」と悩んだことがあったため記録しておきます。ruby関係のことばでよく聞くrbenvgemについてちゃんと理解してなかったためぐぐってみました。rbenvとは?Rubyのバージョンをかんたんに切り替えてくれるやつ!ふむふむ。プロジェクトごとにRubyのバージョンが異なるということはよくありそうなので、簡単に切り替えられるのは便利そうですね。githubからcloneしてきます。~/.rbenv/plugins/ruby-buildHomebrewでもインストールできるみたいです。https://github.com/sstephenson/ruby-buildちなみに、gccが入っていないとrubyのインストールに失敗してしまいます。Macの場合、Xcodeのコマンドラインツールをインストールするとgccがコマンドラインで使えるようになるそうです。参考http://kawairi.jp/weblog/vita/201204255985gemとは?Rubyのサードパーティ製のライブラリの形式のことRubyに付属しているRubyGemsというパッケージングシステムでライブラリの作成・公開・インストールができるらしいです。ライブラリのインストール方法はよく知られているとおりこんなかんじです。hoge参考https://rubygems.org/Bundlergemライブラリの種類やバージョンを管理するのにBundlerというツールを使うとよさそうです。http://www.rubylife.jp/rails/ini/index2.htmlおわりにRubyでがりがりプロジェクトを作るとしたらrbenvとかbundlerは必須なのかなーと思いました。Chefを使いたいというぐらいだったらここまでしなくてもよいかなーと思いましたが、あまりシステムのRuby環境をいじりたくなかったので導入してよかったと思います。00:56rbenvとは、gemとは何か?Tweet広告を非表示にするもっと読むコメントを書く2013-09-11さくらVPS初期設定メモさくらVPS以下を参考にして設定。ブログを報告するスターをつけました引用をストックしましたストック一覧を見る閉じる引用するにはまずログインしてくださいログイン閉じる引用をストックできませんでした。再度お試しください閉じる限定公開記事のため引用できません。