Skip to content

Instantly share code, notes, and snippets.

@jugmac00
jugmac00 / factory.py
Created June 25, 2020 12:24
converting the type comments in this module to annotations with com2ann breaks the code, cf. postponed evaluation of annotations
from typing import Optional
from typing import List
class Pizza:
def __init__(self, ingredients=None):
# type: (Optional[List[str]]) -> None
if ingredients is None:
self.ingredients = []
else:
self.ingredients = ingredients
diff --git a/Grammar/Grammar b/Grammar/Grammar
index 170518af74..25067147bf 100644
--- a/Grammar/Grammar
+++ b/Grammar/Grammar
@@ -138,7 +138,7 @@ not_test: 'not' not_test | comparison
comparison: expr (comp_op expr)*
# <> isn't actually a valid comparison operator in Python. It's here for the
# sake of a __future__ import described in PEP 401 (which really works :-)
-comp_op: '<'|'>'|'=='|'>='|'<='|'<>'|'!='|'in'|'not' 'in'|'is'|'is' 'not'
+comp_op: '<'|'>'|'=='|'>='|'<='|'<>'|'!='|'~='|'in'|'not' 'in'|'is'|'is' 'not'

check support status of installed packages

ubuntu 18.04

$ ubuntu-support-status

ubuntu 20.04

$ ubuntu-security-status

# fun_with_pdb.py
if __name__ == '__main__':
import pdb;pdb.set_trace()
# create a text file: input.txt
"hello from text file"
# then enter following command in your terminal
# python3 fun_with_pdb.py < input.txt
import os
import telegram
import requests
from bs4 import BeautifulSoup
from urllib.parse import urljoin
DAREBEE_URL = "https://www.darebee.com/"
API_KEY = os.getenv("API_KEY")
ID_JUERGEN = os.getenv("ID_JUERGEN")
# coding=utf-8
import pytest
from Products.Libs.string_utils import try_to_convert_list_to_windows_1252_text
@pytest.mark.parametrize("list_, encoding", [
(["abc", "d€f"], "Windows-1252"),
(["我犀角鳥啄忘我", "我犀角鳥啄忘我"], "UTF-16")
])
@jugmac00
jugmac00 / main.py
Last active January 29, 2020 07:08
No need for mocking?
from datetime import date
END_OF_EARLY_BIRD = date(2020, 6, 1)
def calculate_price(current_day):
# if today() > END_OF_EARLY_BIRD:
# no more call to today() => easy to test => no mock necessary
if current_day > END_OF_EARLY_BIRD:
return 1000
@jugmac00
jugmac00 / main.py
Last active November 7, 2023 19:37
Anleitung: Installation von FastAPI unter Windows
"""
Python 3.8 installieren ( + Pfad aktivieren)
In der Konsole:
# legt virtual env an
Python -m venv fastapi
cd fastapi
@jugmac00
jugmac00 / refactoring_bug_2.py
Created December 10, 2019 06:50
refactor inline bug 2
class Index:
def do(self):
self._do_stuff()
def _do_stuff(self):
if "the_moon_shines":
pass
#######################################
@jugmac00
jugmac00 / refactoring_bug_1.py
Created December 10, 2019 06:39
refactor inline bug 1
D = dict()
def access_dict(D):
return D.get("some_key", None)
def do_stuff():
if access_dict() is None:
pass