d = {
    'imie': 'Guido',
    'nazwisko': 'van Rossum',
    'tytuly': ['BDFL', 'Programista'],
} 
print(json.dumps(d))
'{"imie": "Guido", "nazwisko": "van Rossum", "tytuly": ["BDFL", "Programista"]}'

---

<mydocument has="ma atrybut">
  <and>
    <many>elementy</many>
    <many>więcej elementów</many>
  </and>
  <plus a="złożony">
    również element
  </plus>
</mydocument>
---

import socketserver
import xdrlib

class XdrHandler(socketserver.BaseRequestHandler):
    def handle(self):
        data = self.request.recv(4)  
        unpacker = xdrlib.Unpacker(data)
        message_size = self.unpacker.unpack_uint()  
        data = self.request.recv(message_size)  
        unpacker.reset(data)  
        print(unpacker.unpack_string())  
        print(unpacker.unpack_float())
        self.request.sendall(b'ok')
        server = socketserver.TCPServer(('localhost', 12345), XdrHandler)
        server.serve_forever()
---

import socket
import xdrlib

p = xdrlib.Packer()
p.pack_string('Thanks for all the fish!')  
p.pack_float(42.00)
xdr_data = p.get_buffer()
message_length = len(xdr_data)

p.reset()  
p.pack_uint(message_length)
len_plus_data = p.get_buffer() + xdr_data  

with socket.socket() as s:
    s.connect(('localhost', 12345))
    s.sendall(len_plus_data)
    if s.recv(1024):
        print('success')
---

#-*-coding: utf-8-*-
import pickle
import gzip

data = "mój wielki obiekt"

# Do zapakowania i piklowania:
with gzip.open('spam.zip', 'wb') as my_zip:
    pickle.dump(data, my_zip)

# I do rozpakowania i rozpiklowania:
with gzip.open('spam.zip', 'rb') as my_zip:
    unpickled_data = pickle.load(my_zip)
---

#-*-coding: utf-8-*-
import zmq
context = zmq.Context()
server = context.socket(zmq.REP)  
server.bind('tcp://127.0.0.1:5000')  

while True:
    message = server.recv().decode('utf-8')
    print('Client said: {}'.format(message))
    server.send(bytes('I don't know.', 'utf-8'))

---
import zmq
context = zmq.Context()
client = context.socket(zmq.REQ)  
client.connect('tcp://127.0.0.1:5000')  

client.send(bytes("Co na lunch?", 'utf-8'))
response = client.recv().decode('utf-8')
print('Serwer odpowiedział: {}'.format(response))
---

import os
import hashlib

def hash_password(password, salt_len=16, iterations=10000, encoding='utf-8'):
    salt = os.urandom(salt_len)
    hashed_password = hashlib.pbkdf2_hmac(
        hash_name='sha256',
        password=bytes(password, encoding),
        salt=salt,
        iterations=iterations
    )
    return salt, iterations, hashed_password 
---

