Heim Backend-Entwicklung Python-Tutorial Testen Sie Ihre Python-Kenntnisse im Spiel

Testen Sie Ihre Python-Kenntnisse im Spiel

Jun 03, 2019 pm 06:00 PM
python

Ich habe kürzlich eine sehr interessante Python-Spielfreigabe-Website im Internet gesehen. Es gibt insgesamt 33 Level, bei denen Sie Python-Kenntnisse verwenden müssen, um die Antwort zu finden, und dann das Problem lösen müssen nächste Ebene. Es testet die umfassende Beherrschung von Python. Einige Ebenen erfordern beispielsweise die Verwendung regulärer Ausdrücke, andere erfordern die Verwendung von Crawlern.

Testen Sie Ihre Python-Kenntnisse im Spiel

Wir lernen Python normalerweise in Kapitelreihenfolge, Paketen oder Modulen, und es ist leicht, es nach dem Lernen zu vergessen. Auf dieser Website können Sie Ihre Python-Kenntnisse umfassend testen und auf etwaige Mängel überprüfen.

Lassen Sie uns darüber sprechen, wie Sie diese Website nutzen.

Testen Sie Ihre Python-Kenntnisse im Spiel

Dies ist die Hauptseite der Website, nicht wahr? Sie existiert schon seit mehr als zehn Jahren. Aber unterschätzen Sie es nicht, nur weil es wie eine Antiquität aussieht.

Testen Sie Ihre Python-Kenntnisse im Spiel

Lass uns Spaß haben. Klicken Sie auf „Herausgefordert werden“, um die Herausforderung zu starten.

Stufe 0 ist die Aufwärmsitzung zum Aufwärmen:

Die Anforderung für diese Stufe besteht darin, den URL-Link zu ändern, und die Eingabeaufforderung ist ein mathematischer Ausdruck auf dem Computer: 2 hoch 38. Sie müssen also wahrscheinlich den Wert berechnen und dann die URL ändern, um zur nächsten Ebene zu gelangen.

Diese Stufe ist also ein Test grundlegender numerischer Operationen in Python. Wissen Sie, wie man rechnet?

Öffnen Sie das Python-Terminal und Sie können das Ergebnis mit einer Codezeile berechnen:

Testen Sie Ihre Python-Kenntnisse im Spiel

Ersetzen Sie die 0 im ursprünglichen Link durch 274877906944 und drücken Sie die Eingabetaste, um Betreten Sie die nächste Seite Level 1:

Testen Sie Ihre Python-Kenntnisse im Spiel

Das Spiel beginnt offiziell. Das Notizbuch im Bild zeigt drei Gruppen von Buchstaben, und das Muster ist leicht zu finden: Die Buchstaben vorne werden um zwei Stellen nach hinten verschoben, um zu den Buchstaben hinten zu werden.

Dann müssen Sie die folgende Eingabeaufforderungszeichenfolge gemäß dieser Regel entschlüsseln und eine Verschiebungsentschlüsselung durchführen, um die tatsächliche Satzbedeutung zu erhalten:

Diese Frage testet das Wissen im Zusammenhang mit der Zeichenfolgencodierung und for-Schleife, Code Die Implementierung ist wie folgt:

text = '''g fmnc wms bgblr rpylqjyrc gr zw fylb. rfyrq ufyr amknsrcpq
    ypc dmp. bmgle gr gl zw fylb gq glcddgagclr ylb rfyr'q
    ufw rfgq rcvr gq qm jmle. sqgle qrpgle.kyicrpylq()
    gq pcamkkclbcb. lmu ynnjw ml rfc spj.'''
text_translate = ''
for i in text:
    if str.isalpha(i):
        n = ord(i)
        if i >= 'y':
            n = ord(i) + 2 - 26
        else:
            n = ord(i) + 2
        text_translate += chr(n)
    else:
        text_translate += i
print(text_translate)
Nach dem Login kopieren

Das Ergebnis ist:

i hope you didnt translate it by hand. 
thats what computers are for. 
doing it in by hand is inefficient and that's why this text is so long. 
using string.maketrans()is recommended. now apply on the url.
Nach dem Login kopieren

Der Autor ist natürlich sehr interessant. Es wird empfohlen, die Berechnung nicht durchzuführen string.maketrans(), um das Problem zu lösen, ist direkter. Die offizielle Methode bietet eine schlankere Methode:

import string
l = string.lowercase
t = string.maketrans(l, l[2:] + l[:2])
print (text.translate(t))
Nach dem Login kopieren

Ändern Sie dann die Karte in der URL und drücken Sie die Eingabetaste, um zu gelangen zweite Ebene:

Testen Sie Ihre Python-Kenntnisse im Spiel

Der Autor sagte weiter Testen Sie Ihre Python-Kenntnisse im Spiel, dass der relevante Hinweis möglicherweise im Buch enthalten ist (das ist natürlich unmöglich) oder in der Quelle Code der Webseite. Klicken Sie dann mit der rechten Maustaste, um den Quellcode anzuzeigen, und scrollen Sie nach unten, um den grünen Bereich zu sehen. Tatsächlich ist das Problem gefunden:

Testen Sie Ihre Python-Kenntnisse im Spiel

Es bedeutet: Finden Sie die wenigsten Zeichen im Folgende Zeichenfolge Zeichen

untersuchte mehrere Wissenspunkte:

String zur Extraktion regulärer Ausdrücke

Listenanzahl

bedingte Anweisung

Was würdest du an deiner Stelle tun?

Lassen Sie uns einen Blick darauf werfen, zehn Codezeilen zur schnellen Implementierung:

import requests
url = 'http://www.pythonchallenge.com/pc/def/ocr.html'
res = requests.get(url).text
text = re.findall(&#39;.*?<!--.*-->.*<!--(.*)-->&#39;,res,re.S)
# list转为str便于遍历字符
str = &#39;&#39;.join(text)
lst = []
key=[]
#遍历字符
for i in str:
    #将字符存到list中
    lst.append(i)
    #如果字符是唯一的,则添加进key
    if i not in key:
        key.append(i)
# 将list列表中的字符出现字数统计出来
for items in key:
    print(items,lst.count(items))
Nach dem Login kopieren

Verwenden Sie zunächst Requests, um die Webseite anzufordern, verwenden Sie dann reguläre Ausdrücke, um die Zeichenfolge zu extrahieren, und verwenden Sie dann ein for Schleife, um die Anzahl der Vorkommen jedes Zeichens zu zählen.

% 6104
$ 6046
@ 6157
_ 6112
^ 6030
# 6115
) 6186
& 6043
! 6079
+ 6066
] 6152
* 6034
} 6105
[ 6108
( 6154
{ 6046
e 1
q 1
u 1
a 1
l 1
i 1
t 1
y 1
Nach dem Login kopieren

Sie können sehen, dass die letzten paar Zeichen am wenigsten erscheinen, die zusammen „Gleichheit“ sind. Durch Ersetzen der URL-Zeichen können Sie die zweite Ebene bestehen und zur nächsten Ebene wechseln, um die Herausforderung fortzusetzen. Ist es nicht interessant?

Jedes nachfolgende Level erfordert den Einsatz relevanter Python-Fähigkeiten, um es zu lösen. Zum Beispiel Level 4:

Testen Sie Ihre Python-Kenntnisse im Spiel

Der Autor dieses Levels hat einen kleinen Streich gemacht. Sie müssen den Wert manuell in die URL eingeben und die Eingabetaste drücken. Glauben Sie, dass das das Ende ist? Es werden Ihnen nicht ständig scheinbar endlos neue Werte angezeigt, die Sie eingeben können.

Testen Sie Ihre Python-Kenntnisse im Spiel

所以,这一关肯定不能采取手动输入的方法闯关,自然要用到 Python 了。要实现自动填充修改 url 回车跳转到新 url,循环直到网页再也无法跳转为止这一功能。

如果是你,你会怎么做?

其实,一段简单的爬虫加正则就能搞定。思路很简单,把每次网页中的数值提取出来替换成新的 url 再请求网页,循环下去,代码实现如下:

import requests
import re
import os
# 首页url
resp = requests.get(
   &#39;http://www.pythonchallenge.com/pc/def/linkedlist.php?nothing=12345&#39;).text
    url = &#39;http://www.pythonchallenge.com/pc/def/linkedlist.php?nothing=&#39;
# 计数器
count = 0
while True:
   try:
    # 提取下一页动态数值
       nextid = re.search(&#39;\d+&#39;, resp).group()
       count = count + 1
       nextid = int(nextid)
    except:
       print(&#39;最后一个url为:%s&#39; % nexturl)
       break
    # 获取下一页url
    nexturl = url + str(nextid)
    print(&#39;url %s:%s&#39; % (count, nexturl))
    # 重复请求
    resp = requests.get(nexturl).text
Nach dem Login kopieren

输出结果如下:

Testen Sie Ihre Python-Kenntnisse im Spiel

可以看到,最终循环了 85 次找到了最后一个数字16044,输入到 url 中就闯关成功。

如果遇到不会做的题,可以在这里找到参考答案:

中参考文教程:

https://www.cnblogs.com/jimnox/archive/2009/12/08/tips-to-python-challenge.html

官方参考教程:

http://garethrees.org/2007/05/07/python-challenge/

Das obige ist der detaillierte Inhalt vonTesten Sie Ihre Python-Kenntnisse im Spiel. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

AI Hentai Generator

AI Hentai Generator

Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

R.E.P.O. Energiekristalle erklärten und was sie tun (gelber Kristall)
1 Monate vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Beste grafische Einstellungen
1 Monate vor By 尊渡假赌尊渡假赌尊渡假赌
Will R.E.P.O. Crossplay haben?
1 Monate vor By 尊渡假赌尊渡假赌尊渡假赌

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

PHP und Python: Code Beispiele und Vergleich PHP und Python: Code Beispiele und Vergleich Apr 15, 2025 am 12:07 AM

PHP und Python haben ihre eigenen Vor- und Nachteile, und die Wahl hängt von den Projektbedürfnissen und persönlichen Vorlieben ab. 1.PHP eignet sich für eine schnelle Entwicklung und Wartung großer Webanwendungen. 2. Python dominiert das Gebiet der Datenwissenschaft und des maschinellen Lernens.

Wie ist die GPU -Unterstützung für Pytorch bei CentOS? Wie ist die GPU -Unterstützung für Pytorch bei CentOS? Apr 14, 2025 pm 06:48 PM

Aktivieren Sie die Pytorch -GPU -Beschleunigung am CentOS -System erfordert die Installation von CUDA-, CUDNN- und GPU -Versionen von Pytorch. Die folgenden Schritte führen Sie durch den Prozess: Cuda und Cudnn Installation Bestimmen Sie die CUDA-Version Kompatibilität: Verwenden Sie den Befehl nvidia-smi, um die von Ihrer NVIDIA-Grafikkarte unterstützte CUDA-Version anzuzeigen. Beispielsweise kann Ihre MX450 -Grafikkarte CUDA11.1 oder höher unterstützen. Download und installieren Sie Cudatoolkit: Besuchen Sie die offizielle Website von Nvidiacudatoolkit und laden Sie die entsprechende Version gemäß der höchsten CUDA -Version herunter und installieren Sie sie, die von Ihrer Grafikkarte unterstützt wird. Installieren Sie die Cudnn -Bibliothek:

Python gegen JavaScript: Community, Bibliotheken und Ressourcen Python gegen JavaScript: Community, Bibliotheken und Ressourcen Apr 15, 2025 am 12:16 AM

Python und JavaScript haben ihre eigenen Vor- und Nachteile in Bezug auf Gemeinschaft, Bibliotheken und Ressourcen. 1) Die Python-Community ist freundlich und für Anfänger geeignet, aber die Front-End-Entwicklungsressourcen sind nicht so reich wie JavaScript. 2) Python ist leistungsstark in Bibliotheken für Datenwissenschaft und maschinelles Lernen, während JavaScript in Bibliotheken und Front-End-Entwicklungsbibliotheken und Frameworks besser ist. 3) Beide haben reichhaltige Lernressourcen, aber Python eignet sich zum Beginn der offiziellen Dokumente, während JavaScript mit Mdnwebdocs besser ist. Die Wahl sollte auf Projektbedürfnissen und persönlichen Interessen beruhen.

Detaillierte Erklärung des Docker -Prinzips Detaillierte Erklärung des Docker -Prinzips Apr 14, 2025 pm 11:57 PM

Docker verwendet Linux -Kernel -Funktionen, um eine effiziente und isolierte Anwendungsumgebung zu bieten. Sein Arbeitsprinzip lautet wie folgt: 1. Der Spiegel wird als schreibgeschützte Vorlage verwendet, die alles enthält, was Sie für die Ausführung der Anwendung benötigen. 2. Das Union File System (UnionFS) stapelt mehrere Dateisysteme, speichert nur die Unterschiede, speichert Platz und beschleunigt. 3. Der Daemon verwaltet die Spiegel und Container, und der Kunde verwendet sie für die Interaktion. 4. Namespaces und CGroups implementieren Container -Isolation und Ressourcenbeschränkungen; 5. Mehrere Netzwerkmodi unterstützen die Containerverbindung. Nur wenn Sie diese Kernkonzepte verstehen, können Sie Docker besser nutzen.

Miniopen CentOS -Kompatibilität Miniopen CentOS -Kompatibilität Apr 14, 2025 pm 05:45 PM

Minio-Objektspeicherung: Hochleistungs-Bereitstellung im Rahmen von CentOS System Minio ist ein hochleistungsfähiges, verteiltes Objektspeichersystem, das auf der GO-Sprache entwickelt wurde und mit Amazons3 kompatibel ist. Es unterstützt eine Vielzahl von Kundensprachen, darunter Java, Python, JavaScript und Go. In diesem Artikel wird kurz die Installation und Kompatibilität von Minio zu CentOS -Systemen vorgestellt. CentOS -Versionskompatibilitätsminio wurde in mehreren CentOS -Versionen verifiziert, einschließlich, aber nicht beschränkt auf: CentOS7.9: Bietet einen vollständigen Installationshandbuch für die Clusterkonfiguration, die Umgebungsvorbereitung, die Einstellungen von Konfigurationsdateien, eine Festplattenpartitionierung und Mini

Wie man eine verteilte Schulung von Pytorch auf CentOS betreibt Wie man eine verteilte Schulung von Pytorch auf CentOS betreibt Apr 14, 2025 pm 06:36 PM

Pytorch Distributed Training on CentOS -System erfordert die folgenden Schritte: Pytorch -Installation: Die Prämisse ist, dass Python und PIP im CentOS -System installiert sind. Nehmen Sie abhängig von Ihrer CUDA -Version den entsprechenden Installationsbefehl von der offiziellen Pytorch -Website ab. Für CPU-Schulungen können Sie den folgenden Befehl verwenden: PipinstallTorChTorChVisionTorChaudio Wenn Sie GPU-Unterstützung benötigen, stellen Sie sicher, dass die entsprechende Version von CUDA und CUDNN installiert ist und die entsprechende Pytorch-Version für die Installation verwenden. Konfiguration der verteilten Umgebung: Verteiltes Training erfordert in der Regel mehrere Maschinen oder mehrere Maschinen-Mehrfach-GPUs. Ort

So wählen Sie die Pytorch -Version auf CentOS aus So wählen Sie die Pytorch -Version auf CentOS aus Apr 14, 2025 pm 06:51 PM

Bei der Installation von PyTorch am CentOS -System müssen Sie die entsprechende Version sorgfältig auswählen und die folgenden Schlüsselfaktoren berücksichtigen: 1. Kompatibilität der Systemumgebung: Betriebssystem: Es wird empfohlen, CentOS7 oder höher zu verwenden. CUDA und CUDNN: Pytorch -Version und CUDA -Version sind eng miteinander verbunden. Beispielsweise erfordert Pytorch1.9.0 CUDA11.1, während Pytorch2.0.1 CUDA11.3 erfordert. Die Cudnn -Version muss auch mit der CUDA -Version übereinstimmen. Bestimmen Sie vor der Auswahl der Pytorch -Version unbedingt, dass kompatible CUDA- und CUDNN -Versionen installiert wurden. Python -Version: Pytorch Official Branch

So installieren Sie Nginx in CentOS So installieren Sie Nginx in CentOS Apr 14, 2025 pm 08:06 PM

Die Installation von CentOS-Installationen erfordert die folgenden Schritte: Installieren von Abhängigkeiten wie Entwicklungstools, PCRE-Devel und OpenSSL-Devel. Laden Sie das Nginx -Quellcode -Paket herunter, entpacken Sie es, kompilieren Sie es und installieren Sie es und geben Sie den Installationspfad als/usr/local/nginx an. Erstellen Sie NGINX -Benutzer und Benutzergruppen und setzen Sie Berechtigungen. Ändern Sie die Konfigurationsdatei nginx.conf und konfigurieren Sie den Hörport und den Domänennamen/die IP -Adresse. Starten Sie den Nginx -Dienst. Häufige Fehler müssen beachtet werden, z. B. Abhängigkeitsprobleme, Portkonflikte und Konfigurationsdateifehler. Die Leistungsoptimierung muss entsprechend der spezifischen Situation angepasst werden, z. B. das Einschalten des Cache und die Anpassung der Anzahl der Arbeitsprozesse.

See all articles