Skip to content

Instantly share code, notes, and snippets.

@meehow
Created February 27, 2022 12:25
Show Gist options
  • Save meehow/d5035b415dc27695bd73c37d2bb7b6b6 to your computer and use it in GitHub Desktop.
Save meehow/d5035b415dc27695bd73c37d2bb7b6b6 to your computer and use it in GitHub Desktop.
Erkennst du Schweizer Städte anhand von 4 Emojis?
#!/usr/bin/env python3
from hashlib import sha1
import base64
import time
bold_start = '\033[1m'
bold_end = '\033[0m'
questions = [
{
'emoji': '😒 💰 💼 ✈️',
'options': [
'Hmm, Flughafen, ist es %sGenf%s?' % (bold_start, bold_end),
'Nein, so schicke Aktentaschen tragen sie nur in %sLausanne%s.' % (bold_start, bold_end),
'Das ist leicht, so trübe schauen nur %sZürcher%s aus der Wäsche.' % (bold_start, bold_end),
'So weit habt ihr doch nicht überlegt! Ich sage %sChur%s!' % (bold_start, bold_end),
],
'answer': 'c',
'correct': 'd9b7cbdec4d051b6b171da5dfa43484606873ea2',
'description': b'MROo$X<~FBZgp}XWod3@ZXi!`bSxlbWpW^GX=QU|AX9W{ZEbaKXDlE_Y;|X7VP<7+Aa!nJAa`kUbaP{9VP<q}X=7+*ZXiW+W^Zg~AaidZWoBk+dTC{DbRc$Ra$;$2WMy<ZAXRR2WpW^AWo&6>VsvG5AX>w`a%p2|E&',
},
{
'emoji': '🖼️ 🚡 📯 🐐',
'options': [
'«Un i ha Heimweh nach de Bärge!» – eindeutig %sInterlaken%s!' % (bold_start, bold_end),
'Keine Ahnung ... %sSchwyz%s? Was ist typisch für %sSchwyz%s?' % (bold_start, bold_end, bold_start, bold_end),
'Soll das ein Steinbock sein? Ist es %sChur%s?' % (bold_start, bold_end),
'Der Berg erinnert mich etwas an den Pilatus, sicher %sLuzern%s!' % (bold_start, bold_end),
],
'correct': '6024bdc412a887236e2dd06770bdc37850c368c6',
'description': b'MQLszP;YZ|Xm4_EAZEk7av)@BWguf{VRB(>bY*gBb98BQV`yb=AW&~}bYXRLZ*wdlWNBp}LULhkVsgX0WpiU_Vqs`*AYpZ8AY^53AVX+%a%FNLNMUtzVr6n?Aa!nJAZ2N8Wgu&BZE163Xk{Q;X=P_+EFffQWgul~XJu}5Y-wX?AZ2N8AX9W@X>MX~V{0IDWod38b8l>HbY&neE-oNpVr6n5Wpf~BX<~FBYh`I}AX9W@X>MX~V{0u%ZEtF6AUY@',
},
{
'emoji': '🎂 💸 ⛵ 🌁',
'options': [
'Mit dem Nebel im letzten Bild könnte jede Stadt im Mittelland gemeint sein ... %sSolothurn%s?' % (bold_start, bold_end),
'Nein, da schaut doch ganz klar der Zugerberg raus! Also %sZug%s!' % (bold_start, bold_end),
'Stoppt den Wahnsinn! Geld kann nicht fliegen und es handelt sich um %sNeuenburg%s.' % (bold_start, bold_end),
'Segelsport am Genfersee, eindeutig %sGenf%s.' % (bold_start, bold_end),
],
'correct': '3acee23c1a6058dbfafb934ff90c466596c77141',
'description': b'L3L&zWNBq{Wo;lrX>4R5X>)WSWpf~5b#rcEXl-+MWodI|AZ=l6AaieSZfR#AX>A}=bY*pAa&TdCVPt7#b0AuEXD%RDWo~XDX=rjFZE0g@AZlfFdUPOVZgg{FXmxC4X=i0_Aa}#Oa%5$6EFfuPXdq}|Vr3v@X>Mg8T6Je-av)1-a&u#7bZ>HWWgvQWAaihKX>(<6E&',
},
{
'emoji': '🏰 🍇 🏘️ 🐑',
'options': [
'Yaaay! %sSchaffhausen%s!' % (bold_start, bold_end),
'Nope, die Trauben weisen auf die Romandie hin ... %sLausanne%s!' % (bold_start, bold_end),
'Immer diese Fangfragen: Schloss + Wein = %sSion%s!' % (bold_start, bold_end),
'Dieser Widder kommt doch im Wappen von %sDelsberg%s vor!' % (bold_start, bold_end),
],
'correct': '47fc6fdd2fc33d9b17a77d03bc6d2d219ac97af1',
'description': b'L}hXyS7~HqWpXV-Z)0m9Yj16BbRcPMAXi~<aAj^Fc5iMVQ)6ghW@cz%b#rBIAa-wZAa!nJAaHWSq;q9%bZKRBbRcA5a%pZLaB^>LX>Mh1bRctOX>Mg8E-o%0NW->rZe?;IAVgtvAX8&#Y;SXOAaieQY#?N1ZXiu{Zf|rTWMOi1bY*O8Wo|AYS7m8#AYx&4Wo{sIX=NZ}VIX03V`v~@ZY&^ZVPYU@V`v~}WoW~;a&#arE-oM{XlY|>b1D',
},
{
'emoji': '🌴 🛥️ 🍴 🎥',
'options': [
'Palme? Also Süden ... %sBellinzona%s?' % (bold_start, bold_end),
'Messer und Gabel deuten auf ein Restaurant hin und die beste Küche gibt es nun mal in %sMontreux%s.' % (bold_start, bold_end),
'Solche mit Fähnchen gepimpten Boote können sie sich nur in %sLugano%s leisten.' % (bold_start, bold_end),
'Alles Quatsch, hier ist %sLocarno%s am Start! ' % (bold_start, bold_end),
],
'correct': 'eaca946536fd022ba08f018879799b4d856317c1',
'description': b'L3L&zWNBq{WpW@;X<>SLVIXE{Ze(R{AZlfIWoc}4AXaa3X2ZN_a&>NJWo{s5!@P1JWMOk4MrmwqW@U49X?9_3AWUy#VRCM7AaitKbaX5rWMy+`VQgX`WMy(7P;zf-WovYAaxNf5WpW@)VP|h3O<`weX>W36AZc@SAa-wTY-MsFLT_($WgvBKWFSRzb7gKIbaiwfZDDRKAa`kHAZ=x7b97~Hb0BGLAXH^@b7^iYAaiebX=QV7AaiACav*1QbS?',
},
{
'emoji': '⛲ 🍋 🕊️ 🚑',
'options': [
'Jetzt ist bei euch aber eine Schraube locker ... %sGenf%s?' % (bold_start, bold_end),
'Was soll das sein? %sLa-Chaux-de-Fonds%s?' % (bold_start, bold_end),
'Ist das überhaupt in der Schweiz? %sCasablanca%s?' % (bold_start, bold_end),
'Friedenstaube? %sBern%s! Da sind doch alles Hippies.' % (bold_start, bold_end),
],
'correct': '5b32fc5d4d716f47c43a47797a02165c43c3ee59',
'description': b'MQLtjAZK!Kb8}@NMsIF(!=!FyAZcwNQ)Oi=AY^52AWUInAWUU#VQwHOOl56vZY&^UXk}w-b7N>fAt@krZe$>3X>Mg8MsjIoWMyu1bYXR3Wguq5ymBC9X=NZ)PERf%Q)6gsX=QVBY-wX?AZ~ACXdq>2ZXio?VQy<>Zg*j4Wo{s5!@P1JWMOk4Qg3u+AWdm*b#ov~a%FXTAa!nJAZBH9bZKWGX>)WSM`dniE+9f_Vqs!+Vrd{{X>Mj=V`wZOZ)9b1KL',
},
{
'emoji': '🚶 🐻 🇨🇭 🏇',
'options': [
'Yverdon-les-Bains!!!',
'Winterthur!!!',
'St. Moritz!!!',
'Bern!!!',
],
'correct': '25f307bc6427b896db65938143a9de978f08a5dd',
'description': b'Q*R(_VQy!0VQnlRcWGrHWMy(7MQv|tX)RQFa3E~Mq;+O=EFf)lb8{eMVRIltWpZvHb7g66E+9>5bRbe?X>@aAXmxC5EFeO|q;h3$XL4a;Wo{sKZe$=rb#7#3b7*08b1n',
},
{
'emoji': '🎭 🎼 ⛰️ ℹ️',
'options': [
'Theater, Musik, Berge, Touristen. Eindeutig %sThun%s!' % (bold_start, bold_end),
'Mmh, scheint mehr %sLuzern%s zu entsprechen.' % (bold_start, bold_end),
'Endlich %sSt. Gallen%s!' % (bold_start, bold_end),
'Schon wieder %sZürich%s? Ihr zentralistischen Säcke!' % (bold_start, bold_end),
],
'correct': '3ae3ea6eae63b2fd8294e733a5653eb3bcc334cf',
'description': b'MqzVqVPj}?EFevFb7^ZJX>A}&OH3>vLS=GiWgvBKWFTc}Ze<`<Zf#|5XJsH^ZXi@|b#iHQbY*TjAVgtvAYp85Wpf~AX>Md?bRcbEZXjuHAY^57AZc!HWpZ<4Xm@34dS!ATO=Wa)Z*XsHWgtv-dS!BME&',
},
{
'emoji': '🎪 ☔ ⛪ 🍺',
'options': [
'Öhm, ähm ... %sSt. Gallen%s?' % (bold_start, bold_end),
'Pfffff ... %sAarau%s?' % (bold_start, bold_end),
'Katholisch? %sBrig%s?' % (bold_start, bold_end),
'Hmm ... %sdini Mueter%s?' % (bold_start, bold_end),
],
'correct': '90648a5b498682de64fa544f204d8ac46162a0cd',
'description': b'NMUnyAY^qQWpsC8AY@^4AVy_#bb4iMbRcA9av)D^ZDAm8X=7+~AZ2oEVQy}8KOj$JWpW^7VRIl;bS@xAVQg$=av)1=Z*z2Iaz7wXWMy(7WMOk4S7mf`WpY0tLvL+mAa8CV',
},
{
'emoji': '⚽ 🎭 💊 🏢',
'options': [
'Ha, easy, eindeutig %sWinterthur%s!' % (bold_start, bold_end),
'Haha nein Scherz, aber jetzt im Ernst: Natürlich %sBasel%s.' % (bold_start, bold_end),
'Ich wähle aus Prinzip nicht Basel: %sSion%s!' % (bold_start, bold_end),
'Lol, ihr könnt mich alle mal. %sFribourg%s!' % (bold_start, bold_end),
],
'correct': '5bb0db57ee07f6121adcfe289a28a4cb9c8aac51',
'description': b'OKf3sEFeN*b7gEUAVzg_b7Em^Y%Cx~VRLR_V`y|NAW&#wa&2L2Z*F>Ja&BcHb#7!JWMyt3Qg35uWi3>1cV%)eAV+CpbRcDOAZ~ACXdq#3WMy(?AVg_yXJsI1ZXiNob7gEl',
},
{
'emoji': '👟 🚘 ☢️ 🍟',
'options': [
'Aha, endlich kommt %sLausanne%s!' % (bold_start, bold_end),
'Der %sAargau%s! Aber das ist ja ein Kanton und gar keine Stadt, ihr Trottel!' % (bold_start, bold_end),
'Oder doch %sVevey%s?' % (bold_start, bold_end),
'Ist %sMcDonalds%s eine Stadt?' % (bold_start, bold_end),
],
'correct': '017d367b1c3e3e8bde1a8897d04cb899aebdbcbb',
'description': b'N?|M@WMy(7XLWRCEFfWQbY&nxVRC0-bu1uvX>uTKb#rrcWo{sBWocw(av)@7ZXjo2ZhB>IAWLCxbZ>4TdUbPQZEa<4W?^%4Wo|4Wc5iJUMsj6yb7Em^Yh`XAdUb6eL3D3zYjR;`ba!QPYanTJbRcDOAZTH1bRcDEZXi>1!@Of_V`yb=ATBO0',
},
{
'emoji': '🚇 ⚫',
'options': [
'Jap, %sOlten%s.' % (bold_start, bold_end),
'10000000000%% %sNeuenburg%s, ich weiss es, ich bin so klug!' % (bold_start, bold_end),
'S3, %sBiel%s.' % (bold_start, bold_end),
'Ist das die neue Gotthardröhre? In dem Fall Tessin ... %sBellinzona%s?' % (bold_start, bold_end),
],
'correct': '4ee001e19098ec8cf7d826865ea4212255ffb9fd',
'description': b'MQLszOmAaoEFfiRZXjB9XDw57Z*XudAWv*`Wo|AYL1JZcAZcxFWpZd~ZXje~b0BkLXv4N{b97}OOmAaoAY^57AX8&#cV%gMAp',
},
]
def main():
points = 0
for question in questions:
print( '\n\n%s\n' % question['emoji'])
for i, option in enumerate(question['options']):
print('%s: %s' % (chr(65+i), option))
print()
answer = input('answer: ').lower()
h = sha1(answer.encode() + question['description']).hexdigest()
if h == question['correct']:
print('%sKORREKT!%s' % (bold_start, bold_end))
points += 1
else:
print('%sFALSCH!%s' % (bold_start, bold_end))
print(base64.b85decode(question['description']).decode())
time.sleep(1.5)
# print(sha1(question['answer'].encode()+question['description']).hexdigest())
print('\n%sScore: %d%%%s' % (bold_start, (points / len(questions) * 100), bold_end))
if __name__ == '__main__':
main()
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment