Skip to content

Latest commit

 

History

History
61 lines (44 loc) · 2.45 KB

readme.md

File metadata and controls

61 lines (44 loc) · 2.45 KB
lang title author
pl
Lista-2
Jerry Sky


Moje concerns:

  1. Brak standaryzacji parsowania docstring'ów?
    • VS Code nie potrafi przypisać opisu z docstring'u danej funkcji do danego argumentu - po najechaniu kursorem na argument nie wyświetla się opis tego argumentu pomimo jego zdefiniowania w docstring'u danej funkcji.
    • Nie mogę znaleźć jedynego i słusznego systemu zapisywania deskrypcji argumentów funkcji, dlatego też trzymam się Google's Python styleguide.

Zadanie 1

Napisz program, który dla danego pliku tekstowego wróci następujące informacje: liczba bajtów, liczbę słów, liczbę linii oraz maksymalną długość linii.

kod

Zadanie 2

Napisz program, który koduje oraz dekoduje dowolny plik binarny w kodzie Base64. Kod Base64 koduje w taki sposób, że każde kolejne 6 bitów z pliku kodowane jest znakiem ASCII przedstawionych w poniższej tabeli:

tablica = 'ABCD​EFGH​IJKL​MNOP​QRST​UVWX​YZab​cdef​ghij​klmn​opqr​stuv​wxyz​0123​4567​89+/'

Na przykład: słowo "Python" kodujemy jako "UHl0aG9u"

kod

Jeśli linijka zawiera zmienną globalną danego modułu przyrównaną do długiego stringa to według Google's Python styleguide (3.2) jest to akceptowalne.

Zadanie 3

Napisz program, który zamienia wszystkie nazwy w danym katalogu oraz wszystkich podkatalogach na małe litery. Jako parametr podajemy katalog (zobacz moduł os).

kod

Zadanie 4

Napisz program, który w danym katalogu znajdzie wszystkie pliki, które powtarzają się więcej niż raz (zobacz os, help(os.walk)). Weź pod uwagę, że pliki mogą mieć różne nazwy, ale tą samą zawartość, dlatego przyjmujemy, że dwa pliki są takie same, jeśli mają taką samą wielkość oraz taką samą wartość funkcji haszującej. Na wyjściu program wyświetla listę wszystkich plików, które się powtarzają (nazwy plików wraz ze ścieżką)

$ python repchecker.py ./
   ---------------------------------
   ./plik1.txt
   ./katalog1/plik5.txt
   ./katalog3/plik1.dat
   ---------------------------------
   ./plik3.txt
   ./katalog2/plik2.txt
   ---------------------------------

kod