{ "metadata": { "language": "ruby", "name": "", "signature": "sha256:82bb6d5102ae3afca195b45facde797257db4ee71d7aec772dbf1c705433a224" }, "nbformat": 3, "nbformat_minor": 0, "worksheets": [ { "cells": [ { "cell_type": "code", "collapsed": false, "input": [ "people = %w(chezou kk_Ataka xmisao)\n", "block = Proc.new { |name| puts name }\n", "\n", "people.each &block" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "chezou\n" ] }, { "output_type": "stream", "stream": "stdout", "text": [ "kk_Ataka\n" ] }, { "output_type": "stream", "stream": "stdout", "text": [ "xmisao\n" ] }, { "metadata": {}, "output_type": "pyout", "prompt_number": 1, "text": [ "[\"chezou\", \"kk_Ataka\", \"xmisao\"]" ] } ], "prompt_number": 1 }, { "cell_type": "code", "collapsed": false, "input": [ "people.each { |name| puts name }" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "chezou\n" ] }, { "output_type": "stream", "stream": "stdout", "text": [ "kk_Ataka\n" ] }, { "output_type": "stream", "stream": "stdout", "text": [ "xmisao\n" ] }, { "metadata": {}, "output_type": "pyout", "prompt_number": 2, "text": [ "[\"chezou\", \"kk_Ataka\", \"xmisao\"]" ] } ], "prompt_number": 2 }, { "cell_type": "code", "collapsed": false, "input": [ "p1 = Proc.new { |val| val.upcase }\n", "p2 = :upcase.to_proc\n", "\n", "puts p1.call('hi')\n", "puts p2.call('hi')" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "HI\n" ] }, { "output_type": "stream", "stream": "stdout", "text": [ "HI\n" ] } ], "prompt_number": 6 }, { "cell_type": "code", "collapsed": false, "input": [ ":upcase.to_proc" ], "language": "python", "metadata": {}, "outputs": [ { "metadata": {}, "output_type": "pyout", "prompt_number": 7, "text": [ "#" ] } ], "prompt_number": 7 }, { "cell_type": "code", "collapsed": false, "input": [ "people.map{ |person| person.upcase }" ], "language": "python", "metadata": {}, "outputs": [ { "metadata": {}, "output_type": "pyout", "prompt_number": 8, "text": [ "[\"CHEZOU\", \"KK_ATAKA\", \"XMISAO\"]" ] } ], "prompt_number": 8 }, { "cell_type": "code", "collapsed": false, "input": [ "people.map(&:upcase)" ], "language": "python", "metadata": {}, "outputs": [ { "metadata": {}, "output_type": "pyout", "prompt_number": 9, "text": [ "[\"CHEZOU\", \"KK_ATAKA\", \"XMISAO\"]" ] } ], "prompt_number": 9 }, { "cell_type": "code", "collapsed": false, "input": [ "[\"1\", \"2\", \"30\"].map(&:to_i)" ], "language": "python", "metadata": {}, "outputs": [ { "metadata": {}, "output_type": "pyout", "prompt_number": 10, "text": [ "[1, 2, 30]" ] } ], "prompt_number": 10 }, { "cell_type": "code", "collapsed": false, "input": [ "[\"1\", \"2\", \"30\"].map(&:to_i).reduce(&:+)" ], "language": "python", "metadata": {}, "outputs": [ { "metadata": {}, "output_type": "pyout", "prompt_number": 11, "text": [ "33" ] } ], "prompt_number": 11 }, { "cell_type": "code", "collapsed": false, "input": [ "people.map { |person| person.upcase }.each" ], "language": "python", "metadata": {}, "outputs": [ { "metadata": {}, "output_type": "pyout", "prompt_number": 12, "text": [ "[\"CHEZOU\", \"KK_ATAKA\", \"XMISAO\"]" ] } ], "prompt_number": 12 }, { "cell_type": "code", "collapsed": false, "input": [ "people.each do |person|\n", " someone = 'block local'\n", "end\n", "\n", "someone" ], "language": "python", "metadata": {}, "outputs": [ { "ename": "NameError", "evalue": "undefined local variable or method `someone' for main:Object", "output_type": "pyerr", "traceback": [ "\u001b[31mNameError\u001b[0m: undefined local variable or method `someone' for main:Object", "\u001b[37m(pry):35:in `
'\u001b[0m", "\u001b[37m/Users/mic/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/pry-0.10.1/lib/pry/pry_instance.rb:355:in `eval'\u001b[0m", "\u001b[37m/Users/mic/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/pry-0.10.1/lib/pry/pry_instance.rb:355:in `evaluate_ruby'\u001b[0m", "\u001b[37m/Users/mic/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/pry-0.10.1/lib/pry/pry_instance.rb:323:in `handle_line'\u001b[0m", "\u001b[37m/Users/mic/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/pry-0.10.1/lib/pry/pry_instance.rb:243:in `block (2 levels) in eval'\u001b[0m", "\u001b[37m/Users/mic/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/pry-0.10.1/lib/pry/pry_instance.rb:242:in `catch'\u001b[0m", "\u001b[37m/Users/mic/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/pry-0.10.1/lib/pry/pry_instance.rb:242:in `block in eval'\u001b[0m", "\u001b[37m/Users/mic/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/pry-0.10.1/lib/pry/pry_instance.rb:241:in `catch'\u001b[0m", "\u001b[37m/Users/mic/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/pry-0.10.1/lib/pry/pry_instance.rb:241:in `eval'\u001b[0m", "\u001b[37m/Users/mic/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/iruby-0.1.13/lib/iruby/backend.rb:28:in `eval'\u001b[0m", "\u001b[37m/Users/mic/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/iruby-0.1.13/lib/iruby/kernel.rb:110:in `execute_request'\u001b[0m", "\u001b[37m/Users/mic/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/iruby-0.1.13/lib/iruby/kernel.rb:62:in `run'\u001b[0m", "\u001b[37m/Users/mic/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/iruby-0.1.13/lib/iruby/command.rb:30:in `run_kernel'\u001b[0m", "\u001b[37m/Users/mic/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/iruby-0.1.13/lib/iruby/command.rb:16:in `run'\u001b[0m", "\u001b[37m/Users/mic/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/iruby-0.1.13/bin/iruby:6:in `'\u001b[0m", "\u001b[37m/Users/mic/.rbenv/versions/2.1.0/bin/iruby:23:in `load'\u001b[0m", "\u001b[37m/Users/mic/.rbenv/versions/2.1.0/bin/iruby:23:in `
'\u001b[0m" ] } ], "prompt_number": 13 }, { "cell_type": "code", "collapsed": false, "input": [ "people2 = []\n", "people.each do |person|\n", " people2 << person\n", "end\n", "\n", "p people2" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "[\"chezou\", \"kk_Ataka\", \"xmisao\"]" ] }, { "output_type": "stream", "stream": "stdout", "text": [ "\n" ] }, { "metadata": {}, "output_type": "pyout", "prompt_number": 15, "text": [ "[\"chezou\", \"kk_Ataka\", \"xmisao\"]" ] } ], "prompt_number": 15 }, { "cell_type": "code", "collapsed": false, "input": [], "language": "python", "metadata": {}, "outputs": [] } ], "metadata": {} } ] }