Come funziona Python sotto il cofano? Utilizzare per domande relative (ad esempio) alle decisioni di progettazione prese e alle strutture dati interne e agli algoritmi utilizzati.
Mi aspettavo array.arraydi essere più veloce delle liste, dato che le matrici sembrano essere senza box. Tuttavia, ottengo il seguente risultato: In [1]: import array In [2]: L = list(range(100000000)) In [3]: A = array.array('l', range(100000000)) In [4]: %timeit sum(L) 1 loop, best of 3: 667 ms per loop In …
Non capisco come il ciclo su un dizionario o impostato in Python sia fatto per ordine "arbitrario". Voglio dire, è un linguaggio di programmazione, quindi tutto nella lingua deve essere determinato al 100%, giusto? Python deve avere un qualche tipo di algoritmo che decide quale parte del dizionario o set …
Nota: questa domanda è solo a scopo informativo. Sono interessato a vedere quanto in profondità negli interni di Python è possibile andare con questo. Non molto tempo fa, è iniziata una discussione all'interno di una certa domanda relativa alla possibilità di modificare le stringhe passate alle istruzioni di stampa dopo …
C'è un modo per vedere come funzionano le funzioni integrate in Python? Non intendo solo come usarli, ma anche come sono stati costruiti, qual è il codice dietro ordinamento o enumerazione ecc ...?
Apparentemente list(a)non sovrallocare, [x for x in a]sovrallocare in alcuni punti e [*a]sovrallocare continuamente ? Ecco le dimensioni n da 0 a 12 e le dimensioni risultanti in byte per i tre metodi: 0 56 56 56 1 64 88 88 2 72 88 96 3 80 88 104 4 …
Stavo giocando con il tempo e notai che fare una semplice comprensione della lista su una piccola stringa richiedeva più tempo che fare la stessa operazione su una lista di piccole stringhe a singolo carattere. Alcuna spiegazione? È quasi 1,35 volte più tempo. >>> from timeit import timeit >>> timeit("[x …
Stavo cercando di rimuovere i caratteri indesiderati da una determinata stringa utilizzando text.translate()in Python 3.4. Il codice minimo è: import sys s = 'abcde12345@#@$#%$' mapper = dict.fromkeys(i for i in range(sys.maxunicode) if chr(i) in '@#$') print(s.translate(mapper)) Funziona come previsto. Tuttavia lo stesso programma quando viene eseguito in Python 3.4 e …
C'è qualche differenza fondamentale tra i seguenti due frammenti di codice? Il primo assegna un valore a una variabile in una funzione e quindi restituisce quella variabile. La seconda funzione restituisce direttamente il valore. Python li trasforma in bytecode equivalente? Uno di loro è più veloce? Caso 1 : def …
A tupleoccupa meno spazio di memoria in Python: >>> a = (1,2,3) >>> a.__sizeof__() 48 mentre lists occupa più spazio di memoria: >>> b = [1,2,3] >>> b.__sizeof__() 64 Cosa succede internamente alla gestione della memoria Python?
Capisco la differenza tra copyvs. deepcopynel modulo di copia. Ho usato copy.copye copy.deepcopyprima con successo, ma questa è la prima volta che ho effettivamente sovraccaricato i metodi __copy__e __deepcopy__. Ho già Googled intorno e guardato attraverso il built-in moduli Python per cercare istanze del __copy__e __deepcopy__funzioni (ad esempio sets.py, decimal.pye …
Ho giocato con la funzione hash di Python . Per i piccoli numeri interi, appare hash(n) == nsempre. Tuttavia questo non si estende a grandi numeri: >>> hash(2**100) == 2**100 False Non sono sorpreso, capisco che l'hash abbia una gamma finita di valori. Qual è questo intervallo? Ho provato a …
Data la risposta di Zero Pireo a un'altra domanda , ce l'abbiamo x = tuple(set([1, "a", "b", "c", "z", "f"])) y = tuple(set(["a", "b", "c", "z", "f", 1])) print(x == y) Stampa Truecirca l'85% delle volte con la randomizzazione hash abilitata. Perché l'85%?
Ho scoperto che maxè più lento della sortfunzione in Python 2 e 3. Python 2 $ python -m timeit -s 'import random;a=range(10000);random.shuffle(a)' 'a.sort();a[-1]' 1000 loops, best of 3: 239 usec per loop $ python -m timeit -s 'import random;a=range(10000);random.shuffle(a)' 'max(a)' 1000 loops, best of 3: 342 usec per loop Python …
Capisco che i file ".pyc" sono versioni compilate dei file ".py" in testo semplice, creati in fase di esecuzione per rendere i programmi più veloci. Tuttavia ho osservato alcune cose: Dopo la modifica dei file "py", il comportamento del programma cambia. Ciò indica che i file "py" sono compilati o …
We use cookies and other tracking technologies to improve your browsing experience on our website,
to show you personalized content and targeted ads, to analyze our website traffic,
and to understand where our visitors are coming from.
By continuing, you consent to our use of cookies and other tracking technologies and
affirm you're at least 16 years old or have consent from a parent or guardian.