Addition of specific example of great code from one of the listed repositories.
Dieses Issue hat noch niemand übernommen.
Bewertung
- Schwierigkeit
- 2/5
- Geschätzter Aufwand
- 1-3 Stunden
- Anfängerfreundlichkeit
- 42/100
- Issue-Typ
- Dokumentation
- Klarheit
- Größtenteils klar
- Aktivitätsstatus
- Veraltet
- Tech-Stack
- python
- Bereich
- documentation
Rechercherichtung
Beginne mit dem Abschnitt Reading Code und dem verlinkten Beispiel howdoi/howdoi.py. Verfasse eine formelle Erläuterung der im Issue beschriebenen Importbehandlung für Python 2/3, des Kontrollflusses und der konsistenten API und füge sie der entsprechenden Seite hinzu. Als erledigt gilt die Aufgabe, wenn das Beispiel und seine pädagogischen Kernaussagen in einem Pull Request enthalten sind.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Beschreibung
I absolutely love the Reading Code section, and I've been going through some of the repositories and identifying specific examples of why the code is good.
I was hoping to add one such example to the page. Specifically, from howdoi. It's virtually at the top of the codebase and it deals with standardizing the repository for Python 2 and 3.
https://github.com/gleitz/howdoi/blob/master/howdoi/howdoi.py
# Handle imports for Python 2 and 3
if sys.version < '3':
import codecs
from urllib import quote as url_quote
from urllib import getproxies
# Handling Unicode: http://stackoverflow.com/a/6633040/305414
def u(x):
return codecs.unicode_escape_decode(x)[0]
else:
from urllib.request import getproxies
from urllib.parse import quote as url_quote
def u(x):
return x
I think that there are two (and a half) key pedagogical takeaways from this.
The half takeaway is that supporting different versions of Python need not be a grueling task.
The remaining two are -
- Appropriate use of control flow for module imports and function creation
- Standardizing an API so that its source is indistinguishable to the rest of the code and functionality is consistent.
I haven't formally written this up yet, but if you think it would be a useful example, I can do that and submit a pull request.
- Vorherrschende Sprache
- Batchfile
- Sterne
- 29.8k
- Forks
- 5.9k
- PR-Merge-Kennzahlen
- Keine gemergten PRs in 30 T.
Beitragsleitfaden
Erste Schritte
- Lesen Sie das ganze Issue und danach den Beitragsleitfaden des Projekts.
- Schreiben Sie ins Issue, dass Sie es übernehmen — das erspart doppelte Arbeit.
- Forken Sie das Repository und arbeiten Sie in einem Branch.
- Öffnen Sie einen Pull Request, der die Issue-Nummer nennt.
Mehr aus realpython/python-guide
-
Page 404 error Offen
Schwierigkeit 1/5 Unter einer Stunde Anfängerfreundlichkeit 65/100
realpython/python-guide#1104 · 2 Kommentare ·
-
Schwierigkeit 1/5 1-3 Stunden Anfängerfreundlichkeit 62/100
realpython/python-guide#327 ·
-
PyZMQ improvements Offen
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 62/100
realpython/python-guide#326 · 5 Kommentare ·
-
@alex Offen
Schwierigkeit 5/5 Über eine Woche Anfängerfreundlichkeit 10/100
realpython/python-guide#1194 ·
-
Development Team SAP Offen
Schwierigkeit 5/5 Über eine Woche Anfängerfreundlichkeit 10/100
realpython/python-guide#1192 ·
Alle Issues in realpython/python-guide
Ähnliche Issues
-
Add: hunch Offen
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 74/100
AbdelStark/awesome-typesafe#104 ·
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 65/100
-
A11y ♿️
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 72/100
-
Link Checker Report Offenautomated issue report
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 85/100
-
documentation improve or update documentation priority/low triage
Schwierigkeit 2/5 Ein halber Tag Anfängerfreundlichkeit 86/100
warpdotdev/docs#782 · 1 Kommentar ·