{ "cells": [ { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "slide" } }, "source": [ "# Numbers" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": false, "slideshow": { "slide_type": "slide" } }, "outputs": [], "source": [ "2**31" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": false, "slideshow": { "slide_type": "slide" } }, "outputs": [], "source": [ "2**63" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": false, "slideshow": { "slide_type": "slide" } }, "outputs": [], "source": [ "2**64" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": false, "slideshow": { "slide_type": "slide" } }, "outputs": [], "source": [ "2**128" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": false, "slideshow": { "slide_type": "subslide" } }, "outputs": [], "source": [ "2**4000" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": false, "slideshow": { "slide_type": "fragment" } }, "outputs": [], "source": [ "len(str(2**4000))" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "fragment" } }, "source": [ "# Data types" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Lists" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": false }, "outputs": [], "source": [ "arr = [0,1,2,3]\n", "print(arr)" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": false }, "outputs": [], "source": [ "arr = [1,2,'cos', [10,11,12], 3.14]\n", "arr" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": false }, "outputs": [], "source": [ "arr = [0,1,2,3]\n", "arr" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": false }, "outputs": [], "source": [ "len(arr)" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": false }, "outputs": [], "source": [ "arr[1]" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": false }, "outputs": [], "source": [ "arr[-1]" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": false }, "outputs": [], "source": [ "arr[1:3]" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": false }, "outputs": [], "source": [ "arr[:3]" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": false }, "outputs": [], "source": [ "arr[-2:]" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": false }, "outputs": [], "source": [ "arr[-3:-1]" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": false }, "outputs": [], "source": [ "arr = [0,1,2,3,4,5,6]\n", "arr[0:5]" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": false }, "outputs": [], "source": [ "arr[0:5:2]" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": false }, "outputs": [], "source": [ "arr[::2]" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": false }, "outputs": [], "source": [ "arr[::-1]" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": false }, "outputs": [], "source": [ "a=[0,1,2,3]\n", "b=['a','b','c','d']\n", "a+b" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": false }, "outputs": [], "source": [ "a=[10,20,30,40]\n", "a.append(100)\n", "a" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": false }, "outputs": [], "source": [ "a=[10,20,20,30,40]\n", "a.remove(20)\n", "a" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Tuples" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": false }, "outputs": [], "source": [ "a = (1,2,3)\n", "a" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": false }, "outputs": [], "source": [ "a[0]" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": false }, "outputs": [], "source": [ "try:\n", " a[1]=1\n", "except Exception as e:\n", " print('Exception:', e)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Dictionaries" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": false }, "outputs": [], "source": [ "oceny = {'polski': 3.5, 'matematyka': 5, 'fizyka': 4, \n", " 'informatyka': 6}\n", "oceny" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": false }, "outputs": [], "source": [ "oceny['informatyka']" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": false }, "outputs": [], "source": [ "oceny['nowy przedmiot'] = 2.0\n", "oceny" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# Sets" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": false }, "outputs": [], "source": [ "ulubione_przedmioty = set(['polski', 'muzyka', 'geografia', 'historia'])\n", "ulubione_przedmioty" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": false }, "outputs": [], "source": [ "'informatyka' in ulubione_przedmioty" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": false }, "outputs": [], "source": [ "if 'polski' in ulubione_przedmioty:\n", " print('Kocham j. polski!')" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": false }, "outputs": [], "source": [ "a = set(['a','b','c','d'])\n", "b = set(['c','d','e','f'])\n", "a.union(b)" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": false }, "outputs": [], "source": [ "a.intersection(b)" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": false }, "outputs": [], "source": [ "a.difference(b)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Strings" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": false }, "outputs": [], "source": [ "print('Imię: {}'.format('Wojciech'))" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": false }, "outputs": [], "source": [ "from math import pi\n", "print(' Imię: {},\\n Nazwisko: {},\\n PESEL: {},\\n Ulubiona: {}\\n'\n", " .format('Wojciech', 'Jaśkowski', '8212...', pi))" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": false }, "outputs": [], "source": [ "from math import pi\n", "print('''\n", "Imię: {imie},\n", "Nazwisko: {nazw},\n", "PESEL: {pesel},\n", "Ulubiona: {ulub}\n", "'''.format(\n", " nazw='Jaśkowski', \n", " imie='Wojciech', \n", " pesel='8212...', \n", " ulub=pi))" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": false }, "outputs": [], "source": [ "print('ęśćńżół')\n", "print('יהוה')" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": false }, "outputs": [], "source": [ "s = 'ala'\n", "print(s[0:2])" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": false }, "outputs": [], "source": [ "print('ala')\n", "print(\"ala\")" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": false }, "outputs": [], "source": [ "print('ala ma \"kota\"')\n", "print(\"ala ma 'kota'\")" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": false }, "outputs": [], "source": [ "str(12)" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": false }, "outputs": [], "source": [ "int('12')" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": false }, "outputs": [], "source": [ "float('12.1')" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": false }, "outputs": [], "source": [ "text = 'Python is easy;really?'\n", "text.split()" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": false }, "outputs": [], "source": [ "text.split(';')" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": false }, "outputs": [], "source": [ "import re\n", "re.split(' |;', text)" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": false }, "outputs": [], "source": [ "arr = ['a','b','c','d']\n", "str(arr)" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": false }, "outputs": [], "source": [ "'; '.join(arr)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# Flow control" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": false }, "outputs": [], "source": [ "arr = ['a', 'b', 'c', 'd']\n", "for a in arr:\n", " print(a)" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": false }, "outputs": [], "source": [ "list(range(4))" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": false }, "outputs": [], "source": [ "for i in range(len(arr)):\n", " print(i, arr[i])" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": false }, "outputs": [], "source": [ "for i, a in enumerate(arr):\n", " print(i, a)" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": false }, "outputs": [], "source": [ "a = [0,1,2,3]\n", "b = ['a','b','c','d']\n", "n = len(a)\n", "for i in range(n):\n", " print(a[i], b[i])" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": false }, "outputs": [], "source": [ "a = [0,1,2,3]\n", "b = ['a','b','c','d']\n", "for x, y in zip(a, b):\n", " print(x, y)" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": false }, "outputs": [], "source": [ "list(zip(a,b))" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": false }, "outputs": [], "source": [ "c=['ala','ma','kota','!']\n", "zipped = list(zip(a,b,c))\n", "zipped" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": false }, "outputs": [], "source": [ "a, b, c = list(zip(*zipped))\n", "print(a)\n", "print(b)\n", "print(c)" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": false }, "outputs": [], "source": [ "arr = [0,1,2,3]\n", "for a in arr:\n", " if a % 3 == 0:\n", " print('{} = 0 (mod 3)'.format(a))\n", " elif a % 3 == 1:\n", " print('{} = 1 (mod 3)'.format(a))\n", " else:\n", " print('{} = 2 (mod 3)'.format(a))" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": false }, "outputs": [], "source": [ "12 // 5" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": false }, "outputs": [], "source": [ "s = 'python'\n", "while s[0] != 'h':\n", " s = s[1:]\n", "print(s)" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": false }, "outputs": [], "source": [ "a = 1\n", "if -1 <= a and a <= 1:\n", " print('A is in range')" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": false }, "outputs": [], "source": [ "if -1 <= a <= 1:\n", " print('A is in range')" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": false }, "outputs": [], "source": [ "a = [1, 2, 3]\n", "if not 4 in a:\n", " print('4 is missing')\n", " " ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": false }, "outputs": [], "source": [ "# or, continue, break\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Iterating over dictionaries" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": false }, "outputs": [], "source": [ "d = {'a': 1, 'b': 2, 12: 'mama'}\n", "for v in d:\n", " print(v)" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": false }, "outputs": [], "source": [ "for k, v in d.items():\n", " print(str(k) + ' => ' + str(v))" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Functions" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": false }, "outputs": [], "source": [ "def suma(a, b): \n", " return a + b\n", " \n", "suma(1,3)" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": false }, "outputs": [], "source": [ "def suma(a, b, wa=1, wb=1):\n", " return wa * a + wb * b\n", "\n", "print(suma(1, 3))" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": false }, "outputs": [], "source": [ "print(suma(1, 3, 2, 1))" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": false }, "outputs": [], "source": [ "print(suma(1, 3, wb=2, wa=1))" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": false }, "outputs": [], "source": [ "print(suma(1, 3, wb=2))" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": false }, "outputs": [], "source": [ "def f(arr):\n", " n = x = arr[0]\n", " for a in arr:\n", " if n > a:\n", " n = a\n", " if x < a:\n", " x = a\n", " return n, x\n", "\n", "print(f([2,3,1,4]))" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": false }, "outputs": [], "source": [ "a, b = f([2,3,1,4])\n", "print(a)\n", "print(b)" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": false }, "outputs": [], "source": [ "x = f([2,3,1,4])\n", "x" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": false }, "outputs": [], "source": [ "a = 1\n", "b = 2\n", "a, b = b, a\n", "print('a = ' + str(a))\n", "print('b = ' + str(b))" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": false }, "outputs": [], "source": [ "x = ['ala','ma','kota']\n", "a, b, c = x\n", "print('a = ' + str(a))\n", "print('b = ' + str(b))\n", "print('c = ' + str(c))" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": false }, "outputs": [], "source": [ "def f(wa=1, wb=1): \n", " def g(a, b):\n", " return a * wa + b * wb\n", " return g\n", "\n", "f(1,3)" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": false }, "outputs": [], "source": [ "wazona = f(0, 1)\n", "wazona(1,2)" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": false }, "outputs": [], "source": [ "wazona(1, 3)" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": false }, "outputs": [], "source": [ "arr = [-3, 2, 1, 4]\n", "arr.sort()\n", "arr" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": false }, "outputs": [], "source": [ "arr.sort(reverse=True)\n", "arr" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": false }, "outputs": [], "source": [ "def mykey(x):\n", " return abs(x)\n", "arr.sort(key=mykey)\n", "arr" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": false }, "outputs": [], "source": [ "arr.sort(key=lambda x: abs(x))\n", "arr" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": false }, "outputs": [], "source": [ "f = lambda a, b: a - b\n", "print(f(1,2))" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": false }, "outputs": [], "source": [ "g = lambda a, b: a + b\n", "print(g(1,2))" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": false }, "outputs": [], "source": [ "f, g = g, f\n", "print(f(1,2))\n", "print(g(1,2))" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# Various" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Complex numbers" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": false }, "outputs": [], "source": [ "1+3j" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": false }, "outputs": [], "source": [ "abs(1+3j)" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": false }, "outputs": [], "source": [ "(1+3j)*(2-1j)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Generators (yield)" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": false }, "outputs": [], "source": [ "def whatdoido():\n", " a, b = 0, 1\n", " while True:\n", " yield a\n", " a, b = b, a + b\n", " \n", "print(whatdoido())" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": false }, "outputs": [], "source": [ "g = whatdoido()\n", "print(next(g))" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": false }, "outputs": [], "source": [ "print(next(g))\n", "print(next(g))\n", "print(next(g))" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": false }, "outputs": [], "source": [ "for i in range(10):\n", " print(next(g))" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": false }, "outputs": [], "source": [ "for v in whatdoido():\n", " if v > 100:\n", " break\n", " print(v)" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": false }, "outputs": [], "source": [ "def combinations(iterable, r):\n", " # combinations('ABCD', 2) --> AB AC AD BC BD CD\n", " # combinations(range(4), 3) --> 012 013 023 123\n", " pool = tuple(iterable)\n", " n = len(pool)\n", " if r > n:\n", " return\n", " indices = list(range(r))\n", " yield tuple(pool[i] for i in indices)\n", " while True:\n", " for i in reversed(range(r)):\n", " if indices[i] != i + n - r:\n", " break\n", " else:\n", " return\n", " indices[i] += 1\n", " for j in range(i+1, r):\n", " indices[j] = indices[j-1] + 1\n", " yield tuple(pool[i] for i in indices)\n", " \n", "pairs = combinations('ABCD', 2)\n", "print(pairs)\n", "for pair in pairs:\n", " print(pair)" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": false }, "outputs": [], "source": [ "# Pierwsze trzy pary, które mają A i G w środku\n", "pairs = combinations('ABCDEFGH', 3)\n", "found = 0\n", "for pair in pairs:\n", " if 'A' in pair and 'G' in pair and found < 3:\n", " found += 1\n", " print(pair)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Build-in functions" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": false }, "outputs": [], "source": [ "x=1\n", "eval('max([x,2,-2,3])')" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": false }, "outputs": [], "source": [ "exec('import math; print(math.sin(2*math.pi))')" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": false }, "outputs": [], "source": [ "print(all([True, False, True]))\n", "print(any([True, False, True]))" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": false }, "outputs": [], "source": [ "print(sum([1,2,3]))\n", "print(min([1,2,3]))\n", "print(max([1,2,3]))" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": false }, "outputs": [], "source": [ "print(abs(-12))\n", "print(round(3.14159, 3))" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": false }, "outputs": [], "source": [ "print(float(12))\n", "print(int(12.7))" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": false }, "outputs": [], "source": [ "print(str(123))\n", "print(str([1,2,3]))" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": false }, "outputs": [], "source": [ "print(ord('a'))\n", "print(chr(98))" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": false }, "outputs": [], "source": [ "print(type('ala ma kota'))\n", "print(type([1,2,3]))" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Global" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": false }, "outputs": [], "source": [ "text = 'ala ma kota'\n", "\n", "def a():\n", " print('a: ' + text) \n", "def b():\n", " print('b: ' + text)\n", " text = 'ala ma psa' " ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": false }, "outputs": [], "source": [ "a()" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": false }, "outputs": [], "source": [ "try:\n", " b()\n", "except:\n", " import traceback\n", " print(traceback.format_exc())" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": false }, "outputs": [], "source": [ "text = 'ala ma kota'\n", "def c():\n", " global text\n", " print('c: ' + text)\n", " text = 'ala ma psa'\n", "c()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# Comprehensions" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Lists" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": false }, "outputs": [], "source": [ "arr = [0,1,2,3,4,5]\n", "new = []\n", "for a in arr:\n", " new.append('A' + str(a))\n", "new" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": false }, "outputs": [], "source": [ "arr = [0,1,2,3,4,5]\n", "new = ['A' + str(a) for a in arr]\n", "new" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": false }, "outputs": [], "source": [ "arr = [0,1,2,3,4,5]\n", "new = ['A' + str(a) for a in arr if a % 2 == 0]\n", "new" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": false }, "outputs": [], "source": [ "arr = [0,13,2,4,11]\n", "sum([1 for a in arr if a % 2 == 0])" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": false }, "outputs": [], "source": [ "# Chcemy wszystkie pierwsze litery wyrazów zamienić na wielkie\n", "text = 'to jest krótki text nie na temat'\n", "splitted = text.split()\n", "splitted" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": false }, "outputs": [], "source": [ "big = [x[0].upper() + x[1:] for x in splitted]\n", "big" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": false }, "outputs": [], "source": [ "\" \".join(big)" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": false }, "outputs": [], "source": [ "text = 'to jest krótki text nie na temat'\n", "print(\" \".join([x[0].upper() + x[1:] for x in text.split()]))" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Dictionaries" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": false }, "outputs": [], "source": [ "przedmioty = ('matematyka', 'fizyka', 'chemia')\n", "slownik = {p: len(p) for p in przedmioty}\n", "slownik" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# Classes" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": false }, "outputs": [], "source": [ "class Circle:\n", " def __init__(self, radius):\n", " self.radius = radius \n", " \n", " def area(self):\n", " from math import pi\n", " return pi * self.radius**2\n", " \n", " def set_radius(self, radius):\n", " self.radius = radius \n", " \n", "c = Circle(3)\n", "print(c.area())\n", "c.set_radius(5) " ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": false }, "outputs": [], "source": [ "print(c.radius)" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": false }, "outputs": [], "source": [ "class Container:\n", " pass\n", "\n", "c = Container()\n", "c.size = 12\n", "c.value = 10000\n", "\n", "def compute(container):\n", " return container.size ** 2\n", "\n", "compute(c)" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": false }, "outputs": [], "source": [ "class Przedmiot:\n", " acoto = 12\n", " def __init__(self, nazwa):\n", " self.nazwa = nazwa\n", " \n", "p = Przedmiot('kck')\n", "p.nazwa" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": false }, "outputs": [], "source": [ "print(p.acoto)\n", "print(Przedmiot.acoto)" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": false }, "outputs": [], "source": [ "print(p)" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": false }, "outputs": [], "source": [ "class Przedmiot: \n", " def __init__(self, nazwa):\n", " self.nazwa = nazwa\n", " \n", " def __repr__(self):\n", " return 'Przedmiot o nazwie ' + self.nazwa\n", " \n", "p = Przedmiot('KCK')\n", "print(p)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Duck typing" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": false }, "outputs": [], "source": [ "class Circle:\n", " def __init__(self, radius):\n", " self.radius = radius \n", " def area(self):\n", " from math import pi\n", " return pi * self.radius**2\n", "\n", "class Square:\n", " def __init__(self, w):\n", " self.w = w\n", " def area(self):\n", " return self.w**2\n", " \n", "def get_shape():\n", " from random import choice\n", " return choice([Square(4), Circle(4)])\n", " \n", "shape = get_shape()\n", "shape.area()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# Files" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": false }, "outputs": [], "source": [ "f = open('test.txt','w')\n", "for i in range(6):\n", " f.write('To jest linia {}\\n'.format(i))\n", "f.close()" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": false }, "outputs": [], "source": [ "cat test.txt" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": false }, "outputs": [], "source": [ "f = open('test.txt')\n", "for line in f:\n", " print(line, end='')\n", "f.close()" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": false }, "outputs": [], "source": [ "with open('test.txt') as f:\n", " for line in f:\n", " print(line, end='')" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": false }, "outputs": [], "source": [ "with open('test.txt') as f:\n", " lines = f.readlines()\n", "lines[1]" ] } ], "metadata": { "kernelspec": { "display_name": "Python 3", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.5.0" } }, "nbformat": 4, "nbformat_minor": 0 }