>>> 'żywopłot', "żywopłot"
('żywopłot', 'żywopłot')


>>> 'ryce"rz', "ryce'rz"
('ryce"rz', "ryce'rz")


>>> title = "Żywot " 'Briana'                # Niejawna konkatenacja
>>> title
'Żywot Briana'


>>> 'ryce\'rz', "ryce\"rz"
("ryce'rz", 'ryce"rz')


>>> s = 'a\nb\tc'


>>> s
'a\nb\tc'
>>> print s
a
b       c


>>> len(s)
5


>>> s = 'a\0b\0c'
>>> s
'a\x00b\x00c'
>>> len(s)
5


>>> s = '\001\002\x03'
>>> s
'\x01\x02\x03'
>>> len(s)
3


>>> x = "C:\py\code"                         # Zachowuje dosłowny znak \
>>> x
'C:\\py\\code'
>>> len(x)
10


myfile = open('C:\nowy\tekst.dat', 'w')


myfile = open(r'C:\nowy\tekst.dat', 'w')


myfile = open('C:\\nowy\\tekst.dat', 'w')


>>> path = r'C:\nowy\tekst.dat'
>>> path                                     # Wyświetl jako kod Pythona
'C:\\nowy\\tekst.dat'
>>> print path                               # Format przyjazny dla użytkownika
C:\nowy\tekst.dat
>>> len(path)                                # Długość łańcucha znaków
17


>>> mantra = """Zawsze patrz
...  na życie
... z humorem."""
>>>
>>> mantra
'Zawsze patrz\n na życie\nz humorem.'


X = 1
"""
import os
print os.getcwd( )
"""
Y = 2


>>> u'mielonka'
u'mielonka'


>>> 'ni' + u'mielonka'                       # Różne typy łańcuchów znaków
u'nimielonka'


>>> str(u'mielonka')                         # Z Unicode do zwykłego łańcucha 
'mielonka'
>>> unicode('mielonka')                      # Ze zwykłego łańcucha do Unicode
u'mielonka'


>>> u'ab\x20cd'                              # Znaki 8-bitowe (1-bajtowe)
u'ab cd'
>>> u'ab\u0020cd'                            # Znaki 2-bajtowe
u'ab cd'
>>> u'ab\U00000020cd'                        # Znaki 4-bajtowe
u'ab cd'


% python
>>> len('abc')                               # Długość (len), czyli liczba elementów
3
>>> 'abc' + 'def'                            # Konkatenacja - nowy łańcuch znaków
'abcdef'
>>> 'Ni!' * 4                                # Powtórzenie -jak "Ni!" + "Ni!" + ...
'Ni!Ni!Ni!Ni!'


>>> print '------- ...więcej... ---'         # 80 myślników, gorszy sposób
>>> print '-'*80                             # 80 myślników, lepszy sposób


>>> myjob = "haker"
>>> for c in myjob: print c,                 # Przejście przez elementy
...
h a k e r
>>> "k" in myjob                             # Znaleziono
True
>>> "z" in myjob                             # Nie znaleziono
False


>>> S = 'mielonka'
>>> S[0], S[-2]                              # Indeksowanie od początku lub od końca
('m', 'k')
>>> S[1:3], S[1:], S[:-1]                    # Wycinek - ekstrakcja części łańcucha
('ie', 'ielonka', 'mielonk')


>>> S = 'abcdefghijklmnop'
>>> S[1:10:2]
'bdfhj'
>>> S[::2]
'acegikmo'


>>> S = 'halo'
>>> S[::-1]
'olah'


>>> S = 'abcedfg'
>>> S[5:1:-1]
'fdec'


3# Ramka "Znaczenie wycinków"

# Plik echo.py
import sys
print sys.argv

% python echo.py -a -b -c
['echo.py', '-a', '-b', '-c']


>>> "42" + 1
TypeError: cannot concatenate 'str' and 'int' objects


>>> int("42"), str(42)                       # Konwersja z łańcucha i na łańcuch
(42, '42')
>>> repr(42), `42`                           # Konwersja na łańcuch w postaci kodu
('42', '42')


>>> S = "42"
>>> I = 1
>>> S + I
TypeError: cannot concatenate 'str' and 'int' objects

>>> int(S) + I                               # Wymuszenie dodawania
43

>>> S + str(I)                               # Wymuszenie konkatenacji
'421'


>>> str(3.1415), float("1.5")
('3.1415', 1.5)

>>> text = "1.234E-10"
>>> float(text)
1.2340000000000001e-010


>>> ord('s')
115
>>> chr(115)
's'


>>> S = '5'
>>> S = chr(ord(S) + 1)
>>> S
'6'
>>> S = chr(ord(S) + 1)
>>> S
'7'


>>> int('5')
5
>>> ord('5') - ord('0')
5


>>> B = '1101'
>>> I = 0
>>> while B:
...    I = I * 2 + (ord(B[0]) - ord('0'))
...    B = B[1:]
...
>>> I
13


>>> S = 'mielonka'
>>> S[0] = "x"
Zwraca błąd!


>>> S = S + 'MIELONKA!'                      # By zmienić łańcuch, należy utworzyć nowy
>>> S
'mielonkaMIELONKA!'
>>> S = S[:8] + 'Jajka' + S[-1]
>>> S
'mielonkaJajka!'


>>> S = 'mielonka'
>>> S = S.replace('lon', 'lonecz')
>>> S
'mieloneczka'


>>> 'Ten %d %s jest martwy!' % (1, 'ptak')   # Jak sprintf z języka C
Ten 1 ptak jest martwy!


>>> exclamation = "Ni"
>>> "Rycerze, którzy mówią %s!" % exclamation
'Rycerze, którzy mówią Ni!'

>>> "%d %s %d you" % (1, 'spam', 4)
'1 spam 4 you'

>>> "%s -- %s -- %s" % (42, 3.14159, [1, 2, 3])
'42 -- 3.14159 -- [1, 2, 3]'


>>> x = 1234
>>> res = "integers: ...%d...%-6d...%06d" % (x, x, x)
>>> res
'integers: ...1234...1234 ...001234'


>>> x = 1.23456789
>>> x
1.2345678899999999

>>> '%e | %f | %g' % (x, x, x)
'1.234568e+000 | 1.234568 | 1.23457'


>>> '%-6.2f | %05.2f | %+06.1f' % (x, x, x)
'1.23 | 01.23 | +001.2'

>>> "%s" % x, str(x)
('1.23456789', '1.23456789')


>>> "%(n)d %(x)s" % {"n":1, "x":"mielonka"}
'1 mielonka'


>>> reply = """
Witamy...
Witaj %(name)s!
Twój wiek to %(age)s lat.
"""
>>> values = {'name': 'Amadeusz', 'age': 40}
>>> print reply % values
Witamy...
Witaj Amadeusz!
Twój wiek to 40 lat.


>>> food = 'mielonka'
>>> age = 40
>>> vars( )
{'food': 'mielonka', 'age': 40, ...więcej... }


>>> "%(age)d %(food)s" % vars( )
'40 mielonka'


>>> S = 'jajka'
>>> S = S[:2] + 'bł' + S[3:]
>>> S
'jabłka'


>>> S = 'jajka'
>>> S = S.replace('jk', 'błk')
>>> S
'jabłka'


>>> 'aa$bb$cc$dd'.replace('$', 'JAJKA')
'aaJAJKAbbJAJKAccJAJKAdd'


>>> S = 'xxxxJAJKAxxxxJAJKAxxxx'
>>> where = S.find('JAJKA')                  # Odszukanie pozycji
>>> where                                    # Występuje na pozycji przesunięcia 4
4
>>> S = S[:where] + 'MIELONKA' + S[(where+4):]
>>> S
'xxxxMIELONKAxxxxJAJKAxxxx'


>>> S = 'xxxxJAJKAxxxxJAJKAxxxx'
>>> S.replace('JAJKA', 'MIELONKA')           # Zastępuje wszystkie wystąpienia
'xxxxMIELONKAxxxxMIELONKAxxxx'

>>> S.replace('JAJKA', 'MIELONKA', 1)        # Zastępuje jedno wystąpienie
'xxxxMIELONKAxxxxJAJKAxxxx'


>>> S = 'brama'
>>> L = list(S)
>>> L
['b', 'r', 'a', 'm', 'a']


>>> L[2] = 'e'                               # Działa dla list, ale nie dla łańcuchów znaków
>>> L[3] = 'j'
>>> L
['b', 'r', 'e', 'j', 'a']


>>> S = ''.join(L)
>>> S
'breja'


>>> 'JAJKA'.join(['mielonka', 'ser', 'szynka', 'tost'])
'mielonkaJAJKAserJAJKAszynkaJAJKAtost'


>>> line = 'aaa bbb ccc'
>>> col1 = line[0:3]
>>> col3 = line[8:]
>>> col1
'aaa'
>>> col3
'ccc'


>>> line = 'aaa bbb ccc'
>>> cols = line.split( )
>>> cols
['aaa', 'bbb', 'ccc']


>>> line = 'amadeusz,haker,40'
>>> line.split(',')
['amadeusz', 'haker', '40']


>>> line = "jestemMIELONKAdrwalemMIELONKAiMIELONKAjestemMIELONKAOK"
>>> line.split("MIELONKA")
['jestem', 'drwalem', 'i', 'jestem', 'OK']


>>> line = "Rycerze, którzy mówią Ni!\n"
>>> line.rstrip( )
'Rycerze, którzy mówią Ni!'
>>> line.upper( )
'RYCERZE, KTÓRZY MÓWIĄ NI!\n'
>>> line.isalpha( )
False
>>> line.endswith('Ni!\n')
True


>>> line
'Rycerze, którzy mówią Ni!\n'

>>> line.find('Ni') != -1                    # Szukanie za pomocą wywołania metody lub wyrażenia
True

>>> 'Ni' in line
True

>>> sub = 'Ni!\n'
>>> line.endswith(sub)                       # Sprawdzenie końca łańcucha za pomocą wywołania metody lub wycinka
True
>>> line[-len(sub):] == sub
True


>>> S = 'a+b+c+'
>>> x = S.replace('+', 'jajka')
>>> x
'ajajkabjajkacjajka'


>>> import string
>>> y = string.replace(S, '+', 'jajka')
>>> y
'ajajkabjajkacjajka'