From 42f06f8252ae537f1afe873cc68ffbc4af548201 Mon Sep 17 00:00:00 2001 From: rasbt Date: Sun, 13 Apr 2014 19:44:19 -0400 Subject: [PATCH] list reverse --- .../timeit_test-checkpoint.ipynb | 82 ++++++++++++++++++- timeit_test.ipynb | 82 ++++++++++++++++++- 2 files changed, 162 insertions(+), 2 deletions(-) diff --git a/.ipynb_checkpoints/timeit_test-checkpoint.ipynb b/.ipynb_checkpoints/timeit_test-checkpoint.ipynb index ed84d5c..8ac1b2f 100644 --- a/.ipynb_checkpoints/timeit_test-checkpoint.ipynb +++ b/.ipynb_checkpoints/timeit_test-checkpoint.ipynb @@ -1,13 +1,20 @@ { "metadata": { "name": "", - "signature": "sha256:c78a9ef71605847c90e18bf10abda603339de473905dc928bd17aacd1ae5bee9" + "signature": "sha256:30bb811f79dc78fe63221c8960bb4237c811b94fdf197b6479709aff3244cb08" }, "nbformat": 3, "nbformat_minor": 0, "worksheets": [ { "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Python benchmarks via `timeit`" + ] + }, { "cell_type": "markdown", "metadata": {}, @@ -74,6 +81,8 @@ "cell_type": "code", "collapsed": false, "input": [ + "import timeit\n", + "\n", "def reverse_join(my_str):\n", " return ''.join(reversed(my_str))\n", " \n", @@ -115,6 +124,77 @@ } ], "prompt_number": 13 + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### List Reversing - `[::-1]` vs. `reverse()` vs. `reversed()`" + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "import timeit\n", + "\n", + "def reverse_func(my_list):\n", + " new_list = my_list[:]\n", + " new_list.reverse()\n", + " return new_list\n", + " \n", + "def reversed_func(my_list):\n", + " return list(reversed(my_list))\n", + "\n", + "def reverse_slizing(my_list):\n", + " return my_list[::-1]\n", + "\n", + "%timeit reverse_func([1,2,3,4,5])\n", + "%timeit reversed_func([1,2,3,4,5])\n", + "%timeit reverse_slizing([1,2,3,4,5])\n", + "\n", + "# Python 3.4.0\n", + "# MacOS X 10.9.2\n", + "# 2.4 GHz Intel Core Duo\n", + "# 8 GB 1067 Mhz DDR3\n", + "#" + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "output_type": "stream", + "stream": "stdout", + "text": [ + "1000000 loops, best of 3: 857 ns per loop\n", + "1000000 loops, best of 3: 1.78 \u00b5s per loop" + ] + }, + { + "output_type": "stream", + "stream": "stdout", + "text": [ + "\n", + "1000000 loops, best of 3: 758 ns per loop" + ] + }, + { + "output_type": "stream", + "stream": "stdout", + "text": [ + "\n" + ] + } + ], + "prompt_number": 10 + }, + { + "cell_type": "code", + "collapsed": false, + "input": [], + "language": "python", + "metadata": {}, + "outputs": [] } ], "metadata": {} diff --git a/timeit_test.ipynb b/timeit_test.ipynb index ed84d5c..8ac1b2f 100644 --- a/timeit_test.ipynb +++ b/timeit_test.ipynb @@ -1,13 +1,20 @@ { "metadata": { "name": "", - "signature": "sha256:c78a9ef71605847c90e18bf10abda603339de473905dc928bd17aacd1ae5bee9" + "signature": "sha256:30bb811f79dc78fe63221c8960bb4237c811b94fdf197b6479709aff3244cb08" }, "nbformat": 3, "nbformat_minor": 0, "worksheets": [ { "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Python benchmarks via `timeit`" + ] + }, { "cell_type": "markdown", "metadata": {}, @@ -74,6 +81,8 @@ "cell_type": "code", "collapsed": false, "input": [ + "import timeit\n", + "\n", "def reverse_join(my_str):\n", " return ''.join(reversed(my_str))\n", " \n", @@ -115,6 +124,77 @@ } ], "prompt_number": 13 + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### List Reversing - `[::-1]` vs. `reverse()` vs. `reversed()`" + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "import timeit\n", + "\n", + "def reverse_func(my_list):\n", + " new_list = my_list[:]\n", + " new_list.reverse()\n", + " return new_list\n", + " \n", + "def reversed_func(my_list):\n", + " return list(reversed(my_list))\n", + "\n", + "def reverse_slizing(my_list):\n", + " return my_list[::-1]\n", + "\n", + "%timeit reverse_func([1,2,3,4,5])\n", + "%timeit reversed_func([1,2,3,4,5])\n", + "%timeit reverse_slizing([1,2,3,4,5])\n", + "\n", + "# Python 3.4.0\n", + "# MacOS X 10.9.2\n", + "# 2.4 GHz Intel Core Duo\n", + "# 8 GB 1067 Mhz DDR3\n", + "#" + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "output_type": "stream", + "stream": "stdout", + "text": [ + "1000000 loops, best of 3: 857 ns per loop\n", + "1000000 loops, best of 3: 1.78 \u00b5s per loop" + ] + }, + { + "output_type": "stream", + "stream": "stdout", + "text": [ + "\n", + "1000000 loops, best of 3: 758 ns per loop" + ] + }, + { + "output_type": "stream", + "stream": "stdout", + "text": [ + "\n" + ] + } + ], + "prompt_number": 10 + }, + { + "cell_type": "code", + "collapsed": false, + "input": [], + "language": "python", + "metadata": {}, + "outputs": [] } ], "metadata": {}