ruby

ワンライナーで画像をbase64エンコード

rubyだと ruby -r base64 -e "print Base64.encode64(File.new('test.jpg').read)" もしくは ruby -e "print [File.new('test.jpg').read].pack('m')" pythonだと python -m base64 < test.jpg rubyだと60文字ごと、pythonだと76文字ごとに改行コードが入り…

python、rubyで辞書、ハッシュを走査する

keyとvalueを取得する pythonはiteritemsを使います myDict = {"a": 1, "b": 2, "c": 3} for key, value in myDict.iteritems(): print("%s %s" % (key, value)) # => a 1 # => c 3 # => b 2 rubyはeachを使います myHash = {"a" => 1, "b" => 2, "c" => 3} …

underscore.jsのbindとカリー化

underscore.jsのbindについてのメモです。 underscore.jsのbind 第1引数の関数を実行する「関数」を返す 第1引数の関数内の「this」は第2引数の値が使われる コメントにある通り、第3引数以降を渡すとカリー化ができます。 定義は以下の通りです。 // Create…

rubyでやってたアレ、pythonでどうやる? 〜 リストの複製

rubyで ary = [1,2,3] # => [1, 2, 3] ary.object_id # => 2168514860 # 代入しても ary2 = ary # => [1, 2, 3] # 参照先は同じ ary2.object_id # => 2168514860 # dupだと ary3 = ary.dup # => [1, 2, 3] # 新しいリストオブジェクトになる ary3.object_id …

rubyでやってたアレ、pythonでどうやる?

最近pythonでの仕事を初めて「rubyでやってたアレ、どうやるんだろう」と思う機会が何度かあったのでまとめておく select rubyで ary = [1,2,3,4,5,6] ary.select { |e| e % 2 == 0 } # => [2,4,6] pythonで ary = [1,2,3,4,5,6] # リスト内包表記で [e for …

rubyとpythonでURLエンコード

最近ちょっとpythonを触ってるので、覚えたことをメモしておく。rubyの場合 require 'uri' require 'kconv' URI.encode('あいうえお') #=> "%E3%81%82%E3%81%84%E3%81%86%E3%81%88%E3%81%8A" URI.encode('あいうえお'.toeuc) #=> "%A4%A2%A4%A4%A4%A6%A4%A8%…

apnsのインストールメモ

gem install apnsで入れると、feedback serviceに対応したコミットが入ってなかったので ソースを落としてインスール。 wget --no-check-certificate -O apns.tar.gz https://github.com/jpoz/APNS/tarball/master tar zxvf apns.tar.gz cd jpoz-APNS-68be88…

sqlite3-rubyのインストール

以下のようなエラーが出た場合は example% sudo gem install sqlite3-ruby Building native extensions. This could take a while... ERROR: Error installing sqlite3-ruby: ERROR: Failed to build gem native extension./usr/local/bin/ruby extconf.rb c…

script/consoleでエラー

先日セットアップしたdebian lennyのrails環境でscript/consoleをたたくと以下のようなエラーが出た。 % ruby -v ruby 1.9.2dev (2010-01-05 trunk 26244) [i686-linux] % rails -v Rails 2.3.5% script/console Loading development environment (Rails 2.3…