Issue #404

Python vs Go/C++, Making Games With Arcade, Self-Hosted Pip Repositories, and More

Jan. 21, 2020

Python vs Go/C++, Making Games With Arcade, Self-Hosted Pip Repositories, and More
#404 – JANUARY 21, 2020 VIEW IN BROWSER
The PyCoder’s Weekly Logo
Comparing Python, Go, and C++ on the N-Queens Problem (PDF)
“Python currently is the dominant language in the field of Machine Learning but is often criticized for being slow to perform certain tasks. In this report, we use the well-known N-queens puzzle as a benchmark to show that once compiled using the Numba compiler it becomes competitive with C++ and Go in terms of execution speed while still allowing for very fast prototyping.”
PASCAL FUA, KRZYSZTOF LIS

Codemodding Python: Unittest Asserts to Python Asserts
Large codebases require continued maintenance, but it is time-consuming and cumbersome to change portions of code scattered around many files. This article shows how to write codemods to refactor Python code using its Abstract Syntax Tree—gaining far more granular control than basic regex and search-replace.
HANS-WILHELM WARLO

Automate & Standardize Code Reviews for Python
Take the hassle out of code reviews - Codacy flags errors automatically, directly from your Git workflow. Customize standards on coverage, duplication, complexity & style violations. Use in the cloud or on your servers for 30 different languages. Get started for free →
CODACYsponsor

Arcade: A Primer on the Python Game Framework
In this step-by-step tutorial, you’ll learn how to use arcade, a modern Python framework for crafting games with compelling graphics and sound. Object-oriented and built for Python 3.6 and up, arcade provides you a modern set of tools for crafting great Python game experiences.
REAL PYTHON

Creating a Simple Python Pip Repository
“I wanted the simplest (i.e. most lightweight) possible repository capable of serving packages in such a way as that Python’s pip would be able to install them.”
JAN-PIET MENS

Writing a Polyglot Script
Python and Ruby have somewhat similar syntaxes, could you come up with a program that’s valid in both languages?
NKANAEV.GITHUB.IO


Python Jobs


Python Developer (Malta)
GAMING INNOVATION GROUP

Python Web Developer (Remote)
PREMIERE DIGITAL

Software Engineer (Bristol, UK)
ENVELOP RISK

Python Developer (Remote)
CYBERCODERS

More Python Jobs >>>


Articles & Tutorials


Effectively Using Matplotlib
“Now that I have taken the time to learn some of these tools and how to use them with matplotlib, I have started to see matplotlib as an indispensable tool. This post will show how I use matplotlib and provide some recommendations for users getting started”
CHRIS MOFFITT

Scientific Python: Using SciPy for Optimization
Learn about the SciPy ecosystem and how it differs from the SciPy library. You’ll learn how to install SciPy using Anaconda or pip and see some of its modules. Then, you’ll focus on examples that use the clustering and optimization functionality in SciPy.
REAL PYTHON

Python 2 EOL: Survey Results
ActiveState surveyed Python users on how they’ve been preparing for Python 2 End of Life. Find out how your plans stack up, and which pitfalls to avoid. Get the survey results →
ACTIVESTATEsponsor

Basic Data Types in Python
In this course, you’ll learn the basic data types that are built into Python, like numbers, strings, and Booleans. You’ll also get an overview of Python’s built-in functions.
REAL PYTHON video

Unexpected Results With open() and CPython
“Misusing Python’s open() and the interaction of CPython’s GC and UNIX semantics can lead to unexpected results.”
JAVIER HONDUVILLA COTO

Having Some Fun With Python
Writing obfuscated code for fun and…great learning experiences! ;-)
JAMES BENNETT

Monads for Mortals (in Python)
Implementing and testing the identity monad in Python.
KNOWSUCHAGENCY.COM

Measure and Improve Python Code Performance with Blackfire.io
Profile in development, test/staging, and production—with no overhead for end users! Blackfire supports any Python version from 2.7.x and 3.x. Find bottlenecks in wall-time, I/O, CPU, memory, HTTP requests and SQL queries.
BLACKFIREsponsor

Using LLVM and Arrow to JIT and Evaluate Pandas Expressions
CHRISTIAN PERONE

5 Refactoring Tips to Improve Your Python Code
NICK THAPEN

Filtering Pandas DataFrames With Multiple Conditions
VINAY BABU

On Writing a Safe repr()
IONEL CRISTIAN MĂRIEȘ


Projects & Code


voice-flight-following: Announce Nearby Cities Based on Aircraft Position in FSX and P3D
GITHUB.COM/JFAYRE

pypistats: PyPI Download Stats
PYPISTATS.ORG

Typer: Build CLIs With Python Type Hints
TIANGOLO.COM

sql2json: Run a SQL Query and Convert Result to JSON
GITHUB.COM/FSISTEMAS

python-hunter: Flexible Code Tracing Toolkit
GITHUB.COM/IONELMC

CrossHair: SMT-assisted Testing for Python
GITHUB.COM/PSCHANELY • Shared by Phillip Schanely

openpilot: Open Source Driver Assistance System
GITHUB.COM/COMMAAI

JustCause: Compare Methods for Causal Inference
JUSTCAUSE.READTHEDOCS.IO • Shared by Florian Wilhelm

Speck: Line-Art Image Renderer Using Matplotlib
GITHUB.COM/LUCASHADFIELD • Shared by Lucas Hadfield

📆🐍 Upcoming Python Events


⋅ Python Meeting Düsseldorf January 23, 2020

⋅ PythOnRio Meetup January 25, 2020

⋅ Python Ho Monthly Meetup January 26, 2020

⋅ Inland Empire Pyladies (CA, USA) January 27, 2020

⋅ Python Sheffield January 28, 2020

⋅ Heidelberg Python Meetup January 29, 2020

⋅ PiterPy Breakfast January 29, 2020

⋅ SPb Python Drinkup January 30, 2020

⋅ PyCascades (10% Discount) February 8th & 9th in Portland, OR. Get a 10% discount on your ticket courtesy of PyCoder’s with this link.
Happy Pythoning!
Copyright © 2020 PyCoder’s Weekly, All rights reserved.