• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Znacie jakieś inne ciekawe "ficzery" dotyczące Python-a

Object Storage Arubacloud
0 głosów
300 wizyt
pytanie zadane 7 listopada 2022 w Offtop przez VBService Ekspert (252,660 p.)
edycja 4 kwietnia 2023 przez VBService

Jak w tytule smiley

[ on-line ]

ficzer = 'PyTHoN'

print(f'{ficzer:*<40}')
print(f'{ficzer:*>40}')
print(f'{ficzer:*^40}')

for i in range(len(ficzer)+1, 41):
    print(f'{ficzer:*>{i}}')

 


 

from datetime import datetime

print(f'Dzisiaj: {datetime.now():%d-%m-%Y %H:%M:%S}')

 


 

a = { 'lorem1': 1, 'impsum1': 2, 'dolor1': 3, 'amet1': 4 }
b = { 'lorem2': 1, 'impsum2': 2 }

c = { **a, **b }

print(c)
a, *b = [ 1,2,3,4 ]
#                        a      b
print(a, b, sep=', ') #  1, [2, 3, 4]


a, *b, c = [ 1,2,3,4 ]
#                           a     b    c
print(a, b, c, sep=', ') #  1, [2, 3], 4


a, *b, c, d = [ 1,2,3,4 ]
#                              a   b   c  d
print(a, b, c, d, sep=', ') #  1, [2], 3, 4


a, *b, c, d = [ 1,2,3 ]
#                              a   b  c  d
print(a, b, c, d, sep=', ') #  1, [], 3, 4
fruit = 'BANANA'

print(*fruit)           #  B A N A N A
print(*fruit, sep='.')  #  B.A.N.A.N.A
print([*fruit])         #  ['B', 'A', 'N', 'A', 'N', 'A']

 


 

tzw. "operator warunkowy"

test = [ 1, 2, 3, 4, 8, 13, 14 ]

for age in test:
    status = 'infant' if age < 2 else 'toddler' if age < 4 else 'child' if age < 13 else 'teenager'
    print(f'{age:2} {status}')

 


 

import time

# dynamic storage
s = time.time()

list_1 = []
for n in range(10_000_000):
    list_1.append(n)

e = time.time()
print(f"{e - s}s")

# pre-allocation
s = time.time()

list_2 = [0] * 10_000_000
for n in range(10_000_000):
    list_2[n] = n

e = time.time()
print(f"{e - s}s")

 


 

# cAPSLOCk ErrOR
name = "VBSerVICE"
print(name.title())

 


 

Operator trójskładnikowy wykorzystujący krotki

 (test false, test true)[test

isCool = (False, True)[feature == 'Cool']

 

6 odpowiedzi

+1 głos
odpowiedź 7 listopada 2022 przez VBService Ekspert (252,660 p.)

Na "dobry" początek dodam jeszcze jeden (tylko nie wiem czy to nie jest bardziej bug)

[ on-line ]

licz_do_10 =             [ '1','2','3','4' '5','6','7','8','9','10' ]
print(len(licz_do_10))

licz_do_10_jeszcze_raz = [ '1','2','3','4','5','6','7','8','9','10' ]
print(len(licz_do_10_jeszcze_raz))

 

komentarz 7 listopada 2022 przez Velta Maniak (52,010 p.)

Chciałem rzec, że to bajer dla super-leniwych którym się nie chce znaku do połączenia znaków postawić, ale w sumie niezła ciekawostka:

>>> '4''5'
'45'
>>> 4'5'
  File "<stdin>", line 1
    4'5'
     ^^^
SyntaxError: invalid syntax

 

komentarz 7 listopada 2022 przez VBService Ekspert (252,660 p.)
edycja 7 listopada 2022 przez VBService

 bajer dla super-leniwych

taki bajer może być nieco "upierdliwy", przy dłuższych listach, z tą samą dużą ilością tych samych wartości, znaleźć dlaczego  wink

[ on-line ]

not len(duzo_45tek) == len(duzo_45tek_wtf)

może przyprawić o porządny ból głowy, tylko dlatego, że przecinek się "zawieruszył".

+1 głos
odpowiedź 14 listopada 2022 przez reaktywny Nałogowiec (40,930 p.)

Połączenie dwóch list w słownik:

keys_list = ['A', 'B', 'C']
values_list = ['blue', 'red', 'bold']

my_dict = dict(zip(keys_list, values_list))

 

Podaje całkowitą długość stringa s uwzględniając kodowanie znaków.

print(len(s.encode('utf-8')))

 

Sprawdza czy elementy listy są unikalne:

def all_unique(lst):
    return len(lst) == len(set(lst))

 

Zwraca najczęściej występującą liczbę w liście:

def most_frequent(lst):
    return max(set(lst), key=lst.count)

numery = [1, 2, 1, 2, 3,4, 7, 8, 3, 1,3, 2, 1, 3, 4, 3, 4, 2]
print(most_frequent(numery))

 

0 głosów
odpowiedź 7 listopada 2022 przez mokrowski Mędrzec (155,460 p.)
>>> def grow(a = []):
...     a.append(1)
...     return a
... 
>>> grow()
[1]
>>> grow()
[1, 1]
>>> grow()
[1, 1, 1]
>>> grow([2])
[2, 1]
>>> grow([2])
[2, 1]
>>> grow()
[1, 1, 1, 1]
>>> grow()
[1, 1, 1, 1, 1]
>>> grow()
[1, 1, 1, 1, 1, 1]

 

komentarz 8 listopada 2022 przez VBService Ekspert (252,660 p.)
edycja 8 listopada 2022 przez VBService

[ on-line ]  smiley

def grow(a = []):
    a.append(1)
    return a

print(grow()) # [1]
print(grow()) # [1, 1]
print(grow()) # [1, 1, 1]
print(grow([2])) # [2, 1]
print(grow([2])) # [2, 1]
print(grow()) # [1, 1, 1, 1]

#           [1, 1, 1, 1, 1]       [1, 1, 1, 1, 1, 1]
print('\n', grow(),         '\n', grow(), sep='') # wtf? [1, 1, 1, 1, 1, 1]  [1, 1, 1, 1, 1, 1]


print(f'\n{grow()}\n{grow()}') # [1, 1, 1, 1, 1, 1, 1]  [1, 1, 1, 1, 1, 1, 1, 1]

komentarz 9 listopada 2022 przez mokrowski Mędrzec (155,460 p.)
Ha... Ale dlaczego to tak działa i z jakiego powodu nie powinno się stosować tej "funkcjonalności" ? :)
0 głosów
odpowiedź 8 listopada 2022 przez VBService Ekspert (252,660 p.)

Niby nic takiego: ujemny indeks, a tyle "radości"

[ on-line ]

gzegzolka = 'kajakajynocórwdo'
print(gzegzolka[::-1], '\n')

 

0 głosów
odpowiedź 11 listopada 2022 przez VBService Ekspert (252,660 p.)
edycja 11 listopada 2022 przez VBService

Podbijam i dodaję kolejny.  for _ in

[ on-line ]

import random

rnd = [random.randint(1, 100) for _ in range(10)]
print(rnd)

 

1
komentarz 14 listopada 2022 przez reaktywny Nałogowiec (40,930 p.)
Pominięcie wartości używa się nie tylko dla pętli for, także np. przy rozpakowaniu krotki.
0 głosów
odpowiedź 14 listopada 2022 przez VBService Ekspert (252,660 p.)

[ on-line ]


tuple_ = (1,2,3)
print(type(tuple_)) # <class 'tuple'>

tuple_ = 1,2,3
print(type(tuple_)) # <class 'tuple'>

tuple_ = 1,
print(type(tuple_)) # <class 'tuple'>

tuple_ = (1,)
print(type(tuple_)) # <class 'tuple'>

tuple_ = (1)
print(type(tuple_)) # <class '?'>

 

komentarz 4 stycznia 2023 przez mokrowski Mędrzec (155,460 p.)
Hmm... Ja tu nie widzę nic "dziwnego"...

Podobne pytania

+2 głosów
2 odpowiedzi 551 wizyt
pytanie zadane 1 września 2020 w Python przez KumberTwo Dyskutant (8,270 p.)
0 głosów
1 odpowiedź 331 wizyt
pytanie zadane 7 stycznia 2017 w Python przez jestembotem Użytkownik (610 p.)
+1 głos
2 odpowiedzi 160 wizyt
pytanie zadane 28 stycznia 2017 w Systemy operacyjne, programy przez DL TD Nałogowiec (36,710 p.)

92,539 zapytań

141,382 odpowiedzi

319,479 komentarzy

61,928 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Akademia Sekuraka

Kolejna edycja największej imprezy hakerskiej w Polsce, czyli Mega Sekurak Hacking Party odbędzie się już 20 maja 2024r. Z tej okazji mamy dla Was kod: pasjamshp - jeżeli wpiszecie go w koszyku, to wówczas otrzymacie 40% zniżki na bilet w wersji standard!

Więcej informacji na temat imprezy znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...