Π‘Π°ΠΌΠΎΠΎΠ±ΡΡΠ°Π΅ΠΌΡΠΉ ΡΠ°Ρ-Π±ΠΎΡ python, ΠΊΠΎΡΠΎΡΡΠΉ ΡΠΌΠ΅Π΅Ρ ΠΈΡΠΊΠ°ΡΡ ΠΎΡΠ²Π΅ΡΡ Π² Wikipedia / Π₯Π°Π±Ρ
ΠΡΠ΅ΠΌ ΠΏΡΠΈΠ²Π΅Ρ!
ΠΠ°Π²Π½ΠΎ Ρ ΠΎΡΠ΅Π» ΡΠ΄Π΅Π»Π°ΡΡ ΡΠ²ΠΎΠ΅Π³ΠΎ ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½ΠΎΠ³ΠΎ Jarvis. ΠΠ΅Π΄Π°Π²Π½ΠΎ ΡΠ΄Π°Π»Π°ΡΡ ΡΠ²ΠΎΠ±ΠΎΠ΄Π½Π°Ρ ΠΌΠΈΠ½ΡΡΠΊΠ° ΠΈ Ρ Π΅Π³ΠΎ ΡΠ΄Π΅Π»Π°Π». ΠΠ½ ΡΠΌΠ΅Π΅Ρ ΠΏΠ΅ΡΠ΅ΠΏΠΈΡΡΠ²Π°ΡΡΡΡ Ρ ΠΠ°ΠΌΠΈ, Π° ΡΠ°ΠΊΠΆΠ΅ ΠΈΡΠΊΠ°ΡΡ ΠΎΡΠ²Π΅ΡΡ Π½Π° ΠΠ°ΡΠΈ Π²ΠΎΠΏΡΠΎΡΡ Π² Wikipedia. ΠΠ»Ρ Π΅Π³ΠΎ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠΈ Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π» ΡΠ·ΡΠΊ Python.
ΠΠ»Ρ Π½Π°ΡΠ°Π»Π° ΡΡΡΠ°Π½ΠΎΠ²ΠΈΠΌ Π²ΡΠ΅ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΡΠ΅ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ. ΠΡ ΡΡΠΈ: pyTelegramBotAPI, scikit-learn, Π° ΡΠ°ΠΊΠΆΠ΅ Wikipedia. Π£ΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°ΡΡΡΡ ΠΎΠ½ΠΈ ΠΏΡΠΎΡΡΠΎ:
pip install pyTelegramBotAPI
pip install Wikipedia
pip install scikit-learn
ΠΠΎΡΠ»Π΅ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ Π²ΡΠ΅Ρ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊ ΠΏΡΠΈΡΡΡΠΏΠ°Π΅ΠΌ ΠΊ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠ΅. ΠΠ»Ρ Π½Π°ΡΠ°Π»Π° ΠΈΠΌΠΏΠΎΡΡΠΈΡΡΠ΅ΠΌ Π²ΡΠ΅ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ, ΡΡΡΠ°Π½ΠΎΠ²ΠΈΠΌ ΡΠ·ΡΠΊ Π΄Π»Ρ ΠΠΈΠΊΠΈΠΏΠ΅Π΄ΠΈΠΈ ΠΈ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠΈΠΌ ΡΠ΅Π»Π΅Π³ΡΠ°ΠΌΠΌ Π±ΠΎΡΠ°
import telebot, wikipedia, re
from sklearn.feature_extraction.text import CountVectorizer
from sklearn.linear_model import LogisticRegression
wikipedia.set_lang("ru")
bot = telebot.TeleBot('ΠΠ°Ρ ΠΊΠ»ΡΡ, ΠΏΠΎΠ»ΡΡΠ΅Π½Π½ΡΠΉ ΠΎΡ BotFather')Π’Π΅ΠΏΠ΅ΡΡ Π½Π°ΠΏΠΈΡΠ΅ΠΌ ΠΊΠΎΠ΄, Π΄Π»Ρ ΠΎΡΠΈΡΡΠΊΠΈ Π²ΡΠ΅Ρ Π½Π΅Π½ΡΠΆΠ½ΡΡ Π½Π°ΠΌ Π·Π½Π°ΠΊΠΎΠ², ΠΊΠΎΡΠΎΡΡΠ΅ Π²Π²ΠΎΠ΄ΠΈΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ:
def clean_str(r): r = r. lower() r = [c for c in r if c in alphabet] return ''.join(r) alphabet = ' 1234567890-ΠΉΡΡΠΊΠ΅Π½Π³ΡΡΠ·Ρ ΡΡΡΠ²Π°ΠΏΡΠΎΠ»Π΄ΠΆΡΡΡΡΠΌΠΈΡΡΠ±ΡΡqwertyuiopasdfghjklzxcvbnm?%.,()!:;'
Π’Π°ΠΊΠΆΠ΅ ΠΠ°ΠΌ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ ΡΠΎΠ·Π΄Π°ΡΡ Π² ΠΏΠ°ΠΏΠΊΠ΅, Π³Π΄Π΅ Π½Π°Ρ ΠΎΠ΄ΠΈΡΡΡ ΠΠ°Ρ ΠΊΠΎΠ΄ ΡΠ°ΠΉΠ» dialogues.txt, Π² Π½Π΅ΠΌ ΠΌΡ Π±ΡΠ΄Π΅ΠΌ ΡΠΎΠ·Π΄Π°Π²Π°ΡΡ ΡΠ΅ΠΏΠ»ΠΈΠΊΠΈ Π½Π° ΠΊΠΎΡΠΎΡΡΠ΅ Π΄ΠΎΠ»ΠΆΠ΅Π½ ΠΎΡΠ²Π΅ΡΠ°ΡΡ Π±ΠΎΡ. ΠΠΎΡ ΠΏΡΠΈΠΌΠ΅Ρ Π΄Π°Π½Π½ΠΎΠ³ΠΎ ΡΠ°ΠΉΠ»Π°:
ΠΏΡΠΈΠ²Π΅Ρ\Π·Π΄ΡΠ°Π²ΡΡΠ²ΡΠΉΡΠ΅! ΠΊΠ°ΠΊ Π΄Π΅Π»Π°\Ρ ΠΎΡΠΎΡΠΎ. ΠΊΡΠΎ ΡΡ\Ρ ΠΠΆΠ°ΡΠ²ΠΈΡ.
Π‘ΡΡΠΎΠΊΠ° Π΄ΠΎ Π·Π½Π°ΠΊΠ° \ ΠΎΠ·Π½Π°ΡΠ°Π΅Ρ Π²ΠΎΠΏΡΠΎΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ, Π° ΠΏΠΎΡΠ»Π΅ ΠΎΡΠ²Π΅Ρ Π½Π°ΡΠ΅Π³ΠΎ Π±ΠΎΡΠ°. ΠΠΎΡΠ»Π΅ ΡΠ΅Π³ΠΎ Π½Π°ΠΏΠΈΡΠ΅ΠΌ ΡΠ°ΠΊΠΎΠΉ ΠΊΠΎΠ΄ Π² Π½Π°Ρ ΡΠ°ΠΉΠ» Ρ Π±ΠΎΡΠΎΠΌ:
def update():
with open('dialogues.txt', encoding='utf-8') as f:
content = f.read()
blocks = content.split('\n')
dataset = []
for block in blocks:
replicas = block.split('\\')[:2]
if len(replicas) == 2:
pair = [clean_str(replicas[0]), clean_str(replicas[1])]
if pair[0] and pair[1]:
dataset.append(pair)
X_text = []
y = []
for question, answer in dataset[:10000]:
X_text.append(question)
y += [answer]
global vectorizer
vectorizer = CountVectorizer()
X = vectorizer.
fit_transform(X_text)
global clf
clf = LogisticRegression()
clf.fit(X, y)
update()ΠΡΠΎΡ ΠΊΡΡΠΎΠΊ ΠΊΠΎΠ΄Π° ΡΠΈΡΠ°Π΅Ρ ΡΠ°ΠΉΠ» dialogues.txt, ΠΏΠΎΡΠΎΠΌ ΠΏΡΠ΅Π²ΡΠ°ΡΠ°Π΅Ρ ΡΠ΅ΠΏΠ»ΠΈΠΊΠΈ Π² ΡΠ°ΠΊ Π½Π°Π·ΡΠ²Π°Π΅ΠΌΡΠ΅ Π²Π΅ΠΊΡΠΎΡΠ°, Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΠΊΠΎΡΠΎΡΡΡ Π½Π°Ρ Π±ΠΎΡ Π±ΡΠ΄Π΅Ρ ΠΈΡΠΊΠ°ΡΡ Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ ΠΏΠΎΠ΄Ρ ΠΎΠ΄ΡΡΠΈΠΉ ΠΎΡΠ²Π΅Ρ ΠΊ Π·Π°Π΄Π°Π½Π½ΠΎΠΌΡ Π½Π°ΠΌΠΈ Π²ΠΎΠΏΡΠΎΡΡ. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, Π΅ΡΠ»ΠΈ ΠΡ Π½Π°ΠΏΠΈΡΠ°Π»ΠΈ Π² ΡΠ°ΠΉΠ»Π΅ dialogues.txt Π²ΠΎΠΏΡΠΎΡ «Π’Ρ Π·Π½Π°Π΅ΡΡ ΠΠ½Ρ», Π° ΠΎΡΠ²Π΅Ρ Π½Π° Π½Π΅Π³ΠΎ «ΠΠ°, ΠΊΠΎΠ½Π΅ΡΠ½ΠΎ», ΡΠΎ Π±ΠΎΡ Π±ΡΠ΄Π΅Ρ ΠΎΡΠ²Π΅ΡΠ°ΡΡ ΡΠ°ΠΊΠΆΠ΅ ΠΈ Π½Π° ΠΏΠΎΡ ΠΎΠΆΠΈΠ΅ Π²ΠΎΠΏΡΠΎΡΡ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ «Π’Ρ Π·Π½Π°Π΅ΡΡ ΠΠ°ΡΡ».
Π’Π΅ΠΏΠ΅ΡΡ Π½Π°ΠΏΠΈΡΠ΅ΠΌ ΠΊΡΡΠΎΠΊ ΠΊΠΎΠ΄Π°, ΠΊΠΎΡΠΎΡΡΠΉ Π±ΡΠ΄Π΅Ρ Π³Π΅Π½Π΅ΡΠΈΡΠΎΠ²Π°ΡΡ ΠΎΡΠ²Π΅ΡΡ Π½Π° ΠΎΡΠ½ΠΎΠ²Π΅ Π²Π΅ΠΊΡΠΎΡΠΎΠ²:
def get_generative_replica(text): text_vector = vectorizer.transform([text]).toarray()[0] question = clf.predict([text_vector])[0] return question
ΠΡΠΎΡ ΠΊΡΡΠΎΠΊ ΠΊΠΎΠ΄Π° ΠΏΡΠΈΠ½ΠΈΠΌΠ°Π΅Ρ Π²ΠΎΠΏΡΠΎΡ ΠΎΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΠΈ Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ ΠΎΡΠ²Π΅Ρ ΠΎΡ Π±ΠΎΡΠ°.
Π’Π΅ΠΏΠ΅ΡΡ Π½Π°ΠΏΠΈΡΠ΅ΠΌ ΡΡΠ½ΠΊΡΠΈΡ Π΄Π»Ρ ΠΏΠΎΠΈΡΠΊΠ° ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ Π² ΠΠΈΠΊΠΈΠΏΠ΅Π΄ΠΈΠΈ:
def getwiki(s):
try:
ny = wikipedia.page(s)
wikitext=ny.content[:1000]
wikimas=wikitext.split('.')
wikimas = wikimas[:-1]
wikitext2 = ''
for x in wikimas:
if not('==' in x):
if(len((x.
\{\}]*\}', '', wikitext2)
return wikitext2
except Exception as e:
return 'Π ΠΠΈΠΊΠΈΠΏΠ΅Π΄ΠΈΠΈ Π½Π΅Ρ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ ΠΎΠ± ΡΡΠΎΠΌ'ΠΡΠΎΡ ΠΊΡΡΠΎΠΊ ΠΊΠΎΠ΄Π° ΠΏΠΎΠ»ΡΡΠ°Π΅Ρ Π²ΠΎΠΏΡΠΎΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ, ΠΏΠΎΡΠΎΠΌ ΠΈΡΠ΅Ρ ΠΎΡΠ²Π΅Ρ Π½Π° Π½Π΅Π³ΠΎ Π² ΠΠΈΠΊΠΈΠΏΠ΅Π΄ΠΈΠΈ ΠΈ Π΅ΡΠ»ΠΈ ΠΎΡΠ²Π΅Ρ Π½Π°ΠΉΠ΄Π΅Π½, ΡΠΎ ΠΎΡΠ΄Π°Π΅Ρ Π΅Π³ΠΎ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ, Π° Π΅ΡΠ»ΠΈ ΠΎΡΠ²Π΅Ρ Π½Π΅ Π½Π°ΠΉΠ΄Π΅Π½, ΡΠΎ ΠΏΠΈΡΠ΅Ρ, ΡΡΠΎ «Π ΠΠΈΠΊΠΈΠΏΠ΅Π΄ΠΈΠΈ Π½Π΅Ρ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ ΠΎΠ± ΡΡΠΎΠΌ».
Π’Π΅ΠΏΠ΅ΡΡ ΠΏΠΈΡΠ΅ΠΌ ΠΏΠΎΡΠ»Π΅Π΄Π½ΠΈΠΉ ΠΊΡΡΠΎΠΊ ΠΊΠΎΠ΄Π°:
@bot.message_handler(commands=['start'])
def start_message(message):
bot.send_message(message.chat.id,"ΠΠ΄ΡΠ°Π²ΡΡΠ²ΡΠΉΡΠ΅, Π‘ΡΡ.")
question = ""
@bot.message_handler(content_types=['text'])
def get_text_messages(message):
command = message.text.lower()
if command =="Π½Π΅ ΡΠ°ΠΊ":
bot.send_message(message.from_user.id, "Π° ΠΊΠ°ΠΊ?")
bot.register_next_step_handler(message, wrong)
else:
global question
question = command
reply = get_generative_replica(command)
if reply=="Π²ΠΈΠΊΠΈ ":
bot.send_message(message.from_user.id, getwiki(command))
else:
bot.send_message(message.from_user.id, reply)
def wrong(message):
a = f"{question}\{message.
text.lower()} \n"
with open('dialogues.txt', "a", encoding='utf-8') as f:
f.write(a)
bot.send_message(message.from_user.id, "ΠΠΎΡΠΎΠ²ΠΎ")
update()Π ΡΡΠΎΠΌ ΠΊΡΡΠΊΠ΅ ΠΊΠΎΠ΄Π° ΡΠ΅Π»Π΅Π³ΡΠ°ΠΌΠΌ Π±ΠΎΡ ΠΏΡΠΈ ΠΏΠΎΠ»ΡΡΠ΅Π½ΠΈΠΈ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ ΠΎΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΠΎΡΠ²Π΅ΡΠ°Π΅Ρ Π½Π° Π½Π΅Π³ΠΎ ΠΈ Π΅ΡΠ»ΠΈ ΠΎΡΠ²Π΅Ρ Π½Π΅ Π²Π΅ΡΠ½ΡΠΉ, ΡΠΎ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΠΏΠΈΡΠ΅Ρ «Π½Π΅ ΡΠ°ΠΊ». ΠΡΠ»ΠΈ Π±ΠΎΡ ΠΏΠΎΠ»ΡΡΠ°Π΅Ρ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅ «Π½Π΅ ΡΠ°ΠΊ», ΡΠΎ ΠΎΠ½ Π±Π΅ΡΠ΅Ρ ΠΏΠΎΡΠ»Π΅Π΄Π½ΠΈΠΉ Π²ΠΎΠΏΡΠΎΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΠΈ ΡΠΏΡΠ°ΡΠΈΠ²Π°Π΅Ρ «Π° ΠΊΠ°ΠΊ?», ΠΏΠΎΡΠ»Π΅ ΡΠ΅Π³ΠΎ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ Π΄ΠΎΠ»ΠΆΠ΅Π½ ΠΎΡΠΏΡΠ°Π²ΠΈΡΡ Π΅ΠΌΡ ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΡΠΉ ΠΎΡΠ²Π΅Ρ. ΠΠΎΡΠ»Π΅ ΡΡΠΎΠ³ΠΎ Π±ΠΎΡ ΠΎΠ±Π½ΠΎΠ²Π»ΡΠ΅Ρ ΡΠ²ΠΎΡ Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ Π²ΠΎΠΏΡΠΎΡΠΎΠ² ΠΈ ΠΎΡΠ²Π΅ΡΠΎΠ² ΠΈ ΠΏΡΠΈ ΡΠ»Π΅Π΄ΡΡΡΠΈΡ Π²ΠΎΠΏΡΠΎΡΠ°Ρ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΠΎΡΠ²Π΅ΡΠ°Π΅Ρ Π½Π° Π½ΠΈΡ ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΠΎ. Π Π΅ΡΠ»ΠΈ ΠΎΡΠ²Π΅Ρ Π½Π° Π²ΠΎΠΏΡΠΎΡ Π±ΠΎΡ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±ΡΠ» Π²Π·ΡΡΡ ΠΈΠ· ΠΠΈΠΊΠΈΠΏΠ΅Π΄ΠΈΠΈ, ΡΠΎ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ Π² ΠΎΡΠ²Π΅Ρ Π½Π° Π²ΠΎΠΏΡΠΎΡ «Π° ΠΊΠ°ΠΊ?», Π΄ΠΎΠ»ΠΆΠ΅Π½ Π½Π°ΠΏΠΈΡΠ°ΡΡ «wiki». ΠΡΡΠ°Π»ΠΎΡΡ Π² ΠΊΠΎΠ½ΡΠ΅ ΠΏΡΠΈΠΏΠΈΡΠ°ΡΡ ΡΡΡΠΎΡΠΊΡ:
bot.polling(none_stop=True)
Π ΠΌΠΎΠΆΠ½ΠΎ Π·Π°ΠΏΡΡΠΊΠ°ΡΡ ΠΈ ΡΠ΅ΡΡΠΈΡΠΎΠ²Π°ΡΡ Π±ΠΎΡΠ°.
ΠΠ΅ΡΡ ΠΊΠΎΠ΄ ΡΠ°ΠΉΠ»Π° Ρ Π±ΠΎΡΠΎΠΌ ΠΏΡΠΈΠ»Π°Π³Π°Ρ Π½ΠΈΠΆΠ΅:
import telebot, wikipedia, re from sklearn.feature_extraction.text import CountVectorizer from sklearn.linear_model import LogisticRegression bot = telebot.TeleBot('ΠΠ°Ρ ΠΊΠ»ΡΡ ΠΎΡ BotFather') wikipedia.set_lang("ru") def clean_str(r): r = r.lower() r = [c for c in r if c in alphabet] return ''.join(r) alphabet = ' 1234567890-ΠΉΡΡΠΊΠ΅Π½Π³ΡΡΠ·Ρ ΡΡΡΠ²Π°ΠΏΡΠΎΠ»Π΄ΠΆΡΡΡΡΠΌΠΈΡΡΠ±ΡΡqwertyuiopasdfghjklzxcvbnm?%.,()!:;' def update(): with open('dialogues.txt', encoding='utf-8') as f: content = f.read() blocks = content.split('\n') dataset = [] for block in blocks: replicas = block.split('\\')[:2] if len(replicas) == 2: pair = [clean_str(replicas[0]), clean_str(replicas[1])] if pair[0] and pair[1]: dataset.append(pair) X_text = [] y = [] for question, answer in dataset[:10000]: X_text.append(question) y += [answer] global vectorizer vectorizer = CountVectorizer() X = vectorizer.fit_transform(X_text) global clf clf = LogisticRegression() clf.fit(X, y) update() def get_generative_replica(text): text_vector = vectorizer.transform([text]).toarray()[0] question = clf.predict([text_vector])[0] return question def getwiki(s): try: ny = wikipedia.
\{\}]*\}', '', wikitext2) return wikitext2 except Exception as e: return 'Π ΡΠ½ΡΠΈΠΊΠ»ΠΎΠΏΠ΅Π΄ΠΈΠΈ Π½Π΅Ρ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ ΠΎΠ± ΡΡΠΎΠΌ' @bot.message_handler(commands=['start']) def start_message(message): bot.send_message(message.chat.id,"ΠΠ΄ΡΠ°Π²ΡΡΠ²ΡΠΉΡΠ΅, Π‘ΡΡ.") question = "" @bot.message_handler(content_types=['text']) def get_text_messages(message): command = message.text.lower() if command =="Π½Π΅ ΡΠ°ΠΊ": bot.send_message(message.from_user.id, "Π° ΠΊΠ°ΠΊ?") bot.register_next_step_handler(message, wrong) else: global question question = command reply = get_generative_replica(command) if reply=="Π²ΠΈΠΊΠΈ ": bot.send_message(message.from_user.id, getwiki(command)) else: bot.send_message(message.from_user.id, reply) def wrong(message): a = f"{question}\{message.text.lower()} \n" with open('dialogues.txt', "a", encoding='utf-8') as f: f.write(a) bot.send_message(message.from_user.id, "ΠΠΎΡΠΎΠ²ΠΎ") update() bot.polling(none_stop=True)
ΠΠ°Π΄Π΅ΡΡΡ, ΡΡΠ°ΡΡΡ ΠΠ°ΠΌ ΠΏΠΎΠ½ΡΠ°Π²ΠΈΠ»Π°ΡΡ π
ΠΠΈΡΠΎΠ½ | ΡΡΠΎ.
.. Π§ΡΠΎ ΡΠ°ΠΊΠΎΠ΅ ΠΠΈΡΠΎΠ½?Π’ΠΎΠ»ΠΊΠΎΠ²Π°Π½ΠΈΠ΅ΠΠ΅ΡΠ΅Π²ΠΎΠ΄
- ΠΠΈΡΠΎΠ½
?
ΠΠΈΡΠΎΠ½ΡPython regius
ΠΠ°ΡΡΠ½Π°Ρ ΠΊΠ»Π°ΡΡΠΈΡΠΈΠΊΠ°ΡΠΈΡ Π¦Π°ΡΡΡΠ²ΠΎ: ΠΠΈΠ²ΠΎΡΠ½ΡΠ΅ Π’ΠΈΠΏ: Π₯ΠΎΡΠ΄ΠΎΠ²ΡΠ΅ ΠΠΎΠ΄ΡΠΈΠΏ: ΠΠΎΠ·Π²ΠΎΠ½ΠΎΡΠ½ΡΠ΅ ΠΠ»Π°ΡΡ: ΠΡΠ΅ΡΠΌΡΠΊΠ°ΡΡΠΈΠ΅ΡΡ ΠΡΡΡΠ΄: Π§Π΅ΡΡΠΉΡΠ°ΡΡΠ΅ ΠΠΎΠ΄ΠΎΡΡΡΠ΄: ΠΠΌΠ΅ΠΈ Π‘Π΅ΠΌΠ΅ΠΉΡΡΠ²ΠΎ: ΠΠΎΠΆΠ½ΠΎΠ½ΠΎΠ³ΠΈΠ΅ ΠΠΎΠ΄ΡΠ΅ΠΌΠ΅ΠΉΡΡΠ²ΠΎ: ΠΠΈΡΠΎΠ½Ρ ΠΠ°ΡΠΈΠ½ΡΠΊΠΎΠ΅ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ Pythoninae Fitzinger, 1826 Π ΠΎΠ΄Ρ - Π§Π΅ΡΠ½ΠΎΠ³ΠΎΠ»ΠΎΠ²ΡΠ΅ ΠΏΠΈΡΠΎΠ½Ρ (Aspidites)
- ΠΠ°ΡΠ»ΠΈΠΊΠΎΠ²ΡΠ΅ Π°Π²ΡΡΡΠ°Π»ΠΈΠΉΡΠΊΠΈΠ΅ ΠΏΠΈΡΠΎΠ½Ρ (Antaresia)
- ΠΠ°ΠΏΡΠ°Π½ΡΠΊΠΈΠ΅ ΠΏΠΈΡΠΎΠ½Ρ (Apodora)
- ΠΠΎΠ»ΡΡΠ°ΡΡΠ΅ ΠΏΠΈΡΠΎΠ½Ρ (Bothrochilus)
- ΠΠ΅Π»ΠΎΠ³ΡΠ±ΡΠ΅ ΠΏΠΈΡΠΎΠ½Ρ (Leiopython)
- ΠΠΎΠ΄ΡΠ½ΡΠ΅ ΠΏΠΈΡΠΎΠ½Ρ (Liasis)
- Π ΠΎΠΌΠ±ΠΈΡΠ΅ΡΠΊΠΈΠ΅ ΠΏΠΈΡΠΎΠ½Ρ (Morelia)
- ΠΠ°ΡΡΠΎΡΡΠΈΠ΅ ΠΏΠΈΡΠΎΠ½Ρ (Python)
Π‘ΠΈΡΡΠ΅ΠΌΠ°ΡΠΈΠΊΠ°
Π½Π° ΠΠΈΠΊΠΈΠ²ΠΈΠ΄Π°Ρ
ΠΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ
Π½Π° ΠΠΈΠΊΠΈΡΠΊΠ»Π°Π΄Π΅ITIS 563893 ΠΠΈΡΠΎΜΠ½Ρ (Π»Π°Ρ.
Β Pythoninae) β ΠΏΠΎΠ΄ΡΠ΅ΠΌΠ΅ΠΉΡΡΠ²ΠΎ Π»ΠΎΠΆΠ½ΠΎΠ½ΠΎΠ³ΠΈΡ Π·ΠΌΠ΅ΠΉ, ΠΈΠ½ΠΎΠ³Π΄Π° Π²ΡΠ΄Π΅Π»ΡΠ΅ΠΌΠΎΠ΅ Π² ΠΎΡΠ΄Π΅Π»ΡΠ½ΠΎΠ΅ ΡΠ΅ΠΌΠ΅ΠΉΡΡΠ²ΠΎ Pythonidae. Π Π±ΠΎΠ»Π΅Π΅ ΡΠ·ΠΊΠΎΠΌ ΡΠΌΡΡΠ»Π΅ ΠΏΠΈΡΠΎΠ½Ρ β ΠΏΡΠ΅Π΄ΡΡΠ°Π²ΠΈΡΠ΅Π»ΠΈ ΡΠΎΠ΄Π° Python.
Π Π°ΡΠΏΡΠΎΡΡΡΠ°Π½Π΅Π½Ρ Π² ΠΠΎΡΡΠΎΡΠ½ΠΎΠΌ ΠΈ ΡΠ°ΡΡΠΈΡΠ½ΠΎ Π² ΠΠ°ΠΏΠ°Π΄Π½ΠΎΠΌ (Π¦Π΅Π½ΡΡΠ°Π»ΡΠ½Π°Ρ ΠΠΌΠ΅ΡΠΈΠΊΠ°) ΠΏΠΎΠ»ΡΡΠ°ΡΠΈΡΡ . Π£ ΠΌΠ½ΠΎΠ³ΠΈΡ Π²ΠΈΠ΄ΠΎΠ² ΡΠΎΡ ΡΠ°Π½ΠΈΠ»ΠΈΡΡ Ρ ΠΎΡΠΎΡΠΎ Π·Π°ΠΌΠ΅ΡΠ½ΡΠ΅ ΡΡΠ΄ΠΈΠΌΠ΅Π½ΡΡ Π·Π°Π΄Π½ΠΈΡ ΠΊΠΎΠ½Π΅ΡΠ½ΠΎΡΡΠ΅ΠΉ. Π Π°Π·ΠΌΠ΅ΡΡ ΠΏΠΈΡΠΎΠ½ΠΎΠ² ΠΎΡ 0,5 Π΄ΠΎ 10 ΠΌΠ΅ΡΡΠΎΠ² (ΡΠ΅ΡΡΠ°ΡΡΠΉ ΠΏΠΈΡΠΎΠ½). ΠΡΠ»ΠΈΡΠΈΡΠ΅Π»ΡΠ½ΡΠΌ ΡΠ²ΠΎΠΉΡΡΠ²ΠΎΠΌ ΠΏΠΈΡΠΎΠ½ΠΎΠ² ΡΠ²Π»ΡΠ΅ΡΡΡ ΡΠΏΠΎΡΠΎΠ±Π½ΠΎΡΡΡ Π½Π°ΡΠΈΠΆΠΈΠ²Π°ΡΡ ΠΊΠ»Π°Π΄ΠΊΡ ΡΠΈΡ, ΠΏΡΠΈΡΠ΅ΠΌ Π·Π° ΡΡΠ΅Ρ ΡΠΎΠΊΡΠ°ΡΠ΅Π½ΠΈΡ ΠΌΡΡΡ ΡΠ΅Π»Π° ΡΠ΅ΠΌΠΏΠ΅ΡΠ°ΡΡΡΠ° ΠΊΠ»Π°Π΄ΠΊΠΈ Π½Π° 12β15Β° Π‘ Π²ΡΡΠ΅ ΡΠ΅ΠΌΠΏΠ΅ΡΠ°ΡΡΡΡ ΠΎΠΊΡΡΠΆΠ°ΡΡΠ΅ΠΉ ΡΡΠ΅Π΄Ρ. ΠΡΠ΅ ΠΎΠ΄Π½ΠΈΠΌ ΠΊΠ»Π°ΡΡΠΈΡΠΈΠΊΠ°ΡΠΈΠΎΠ½Π½ΡΠΌ ΠΏΡΠΈΠ·Π½Π°ΠΊΠΎΠΌ Π΄ΠΎΡΡΠΎΠ²Π΅ΡΠ½ΠΎ ΠΎΡΠ»ΠΈΡΠ°ΡΡΠΈΠΌ ΠΏΠΈΡΠΎΠ½Π° ΠΎΡ ΡΠ΄Π°Π²Π° ΡΠ²Π»ΡΠ΅ΡΡΡ Π½Π°Π»ΠΈΡΠΈΠ΅ ΡΡΠ΄ΠΈΠΌΠ΅Π½ΡΠ°ΡΠ½ΠΎΠΉ ΠΊΠΎΡΡΠΈ Π² ΡΠ»Π΅Π½Π΅ ΠΏΠΈΡΠΎΠ½ΠΎΠ². ΠΠ°Π»ΠΈΡΠΈΠ΅ ΡΡΠΎΠΉ ΠΊΠΎΡΡΠΈ Π·Π°ΡΡΡΠ΄Π½ΡΠ΅Ρ ΡΠΎΠΊΡΡΡΠΈΠ΅ ΠΏΠΎΠ»ΠΎΠ²ΠΎΠ³ΠΎ ΡΠ»Π΅Π½Π° Π² ΠΏΠΎΠ»ΠΎΡΡΠΈ ΡΠ΅Π»Π°, Π² ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠ΅ ΡΠ΅Π³ΠΎ Ρ ΠΏΠΈΡΠΎΠ½Π° ΠΌΠ΅ΠΆΠ΄Ρ ΡΡΠ΄ΠΈΠΌΠ΅Π½ΡΠ°ΠΌΠΈ Π·Π°Π΄Π½ΠΈΡ ΠΊΠΎΠ½Π΅ΡΠ½ΠΎΡΡΠ΅ΠΉ ΡΠ°ΡΡΠΎ ΠΏΡΠΎΡΠΌΠ°ΡΡΠΈΠ²Π°Π΅ΡΡΡ Π½Π΅ΠΏΠΎΠ»Π½ΠΎΡΡΡΡ ΡΠ±ΡΠ°Π½Π½ΡΠΉ ΠΏΠΎΠ»ΠΎΠ²ΠΎΠΉ ΡΠ»Π΅Π½.
ΠΠΊΡΠ°ΡΠΊΠ° ΠΎΡ Π±ΠΎΠ»Π΅Π΅ ΠΈΠ»ΠΈ ΠΌΠ΅Π½Π΅Π΅ ΠΎΠ΄Π½ΠΎΡΠ²Π΅ΡΠ½ΠΎΠΉ (Π±ΡΡΠΎΠ³ΠΎ ΠΈΠ»ΠΈ Π±ΡΡΠΎ-ΠΊΠΎΡΠΈΡΠ½Π΅Π²ΠΎΠ³ΠΎ ΡΠΎΠ½ΠΎΠ²) Π΄ΠΎ Π΄ΠΎΠ²ΠΎΠ»ΡΠ½ΠΎ ΠΏΡΡΡΡΠΎΠΉ β ΠΏΡΡΠ½ΠΈΡΡΠΎΠΉ.

ΠΠ±ΠΈΡΠ°ΡΡ ΠΏΡΠ΅ΠΈΠΌΡΡΠ΅ΡΡΠ²Π΅Π½Π½ΠΎ Π² ΠΊΠ°ΠΌΡΡΠ°Ρ , ΡΡΠΎΡΡΠ½ΠΈΠΊΠ°Ρ ΠΈ ΡΡΠ΅Π΄ΠΈ ΠΊΠ°ΠΌΠ½Π΅ΠΉ; Ρ ΠΎΡΠΎΡΠΎ ΠΏΠ»Π°Π²Π°ΡΡ ΠΈ Π½ΡΡΡΡΡ. ΠΠ½ΠΎΠ³Π΄Π° Π·Π°ΠΏΠΎΠ»Π·Π°ΡΡ Π½Π° Π±ΠΎΠ»ΡΡΠΈΠ΅ Π΄Π΅ΡΠ΅Π²ΡΡ. ΠΠΈΡΠ°ΡΡΡΡ Π³Π»Π°Π²Π½ΡΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ ΠΌΠ»Π΅ΠΊΠΎΠΏΠΈΡΠ°ΡΡΠΈΠΌΠΈ (ΠΊΡΡΠΏΠ½ΡΠ΅ ΠΏΠΈΡΠΎΠ½Ρ Π·Π°Π³Π»Π°ΡΡΠ²Π°ΡΡ ΡΠ°ΠΊΠ°Π»ΠΎΠ², Π»Π΅ΠΎΠΏΠ°ΡΠ΄ΠΎΠ², Π΄ΠΈΠΊΠΎΠ±ΡΠ°Π·ΠΎΠ², ΠΌΠΎΠ»ΠΎΠ΄ΡΡ ΠΊΠ°Π±Π°Π½ΠΎΠ² ΠΈ Ρ. Π΄.), Π° ΡΠ°ΠΊΠΆΠ΅ ΠΏΡΠΈΡΠ°ΠΌΠΈ, ΠΊΡΡΠΏΠ½ΡΠΌΠΈ ΡΡΠ΅ΡΠΈΡΠ°ΠΌΠΈ, ΠΆΠ°Π±Π°ΠΌΠΈ; ΠΌΠΎΠ»ΠΎΠ΄ΡΠ΅ ΠΏΠΈΡΠΎΠ½Ρ β ΠΏΡΠ΅ΠΈΠΌΡΡΠ΅ΡΡΠ²Π΅Π½Π½ΠΎ Π½Π°ΡΠ΅ΠΊΠΎΠΌΡΠΌΠΈ. ΠΠ·Π²Π΅ΡΡΠ½Ρ ΡΠ»ΡΡΠ°ΠΈ Π½Π°ΠΏΠ°Π΄Π΅Π½ΠΈΡ ΠΏΠΈΡΠΎΠ½ΠΎΠ² Π½Π° ΡΠ΅Π»ΠΎΠ²Π΅ΠΊΠ°. ΠΠΎΠ±ΡΡΡ Π»ΠΎΠ²ΡΡ, Ρ Π²Π°ΡΠ°Ρ Π΅Ρ Π·ΡΠ±Π°ΠΌΠΈ ΠΈ ΠΎΠ΄Π½ΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎ ΡΠΆΠΈΠΌΠ°Ρ ΠΊΠΎΠ»ΡΡΠ°ΠΌΠΈ ΡΠ²ΠΎΠ΅Π³ΠΎ ΡΠ΅Π»Π°.
Π Π½Π΅Π²ΠΎΠ»Π΅ ΠΆΠΈΠ²ΡΡ Π΄ΠΎ 25 Π»Π΅Ρ. ΠΡΡΠΎ Π½Π΅ΠΊΠΎΡΠΎΡΡΡ ΠΏΠΈΡΠΎΠ½ΠΎΠ² ΡΡΠ΅Π΄ΠΎΠ±Π½ΠΎ, ΠΊΠΎΠΆΠ° ΠΌΠ½ΠΎΠ³ΠΈΡ Π²ΠΈΠ΄ΠΎΠ² ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π΄Π»Ρ ΡΠ°Π·Π»ΠΈΡΠ½ΡΡ ΠΈΠ·Π΄Π΅Π»ΠΈΠΉ. [1]ΠΠΈΡΠ΅ΡΠ°ΡΡΡΠ°
- ΠΠ°ΡΠΌΠΎΠ² Π.Π., ΠΠ°ΡΡΠ°ΡΠ΅Π² Π.Π. Π§Π°ΡΡΡ 2. ΠΡΠ΅ΡΠΌΡΠΊΠ°ΡΡΠΈΠ΅ΡΡ, ΠΏΡΠΈΡΡ, ΠΌΠ»Π΅ΠΊΠΎΠΏΠΈΡΠ°ΡΡΠΈΠ΅ // ΠΠΎΠΎΠ»ΠΎΠ³ΠΈΡ ΠΏΠΎΠ·Π²ΠΎΠ½ΠΎΡΠ½ΡΡ . β Π.: ΠΡΡΡΠ°Ρ ΡΠΊΠΎΠ»Π°, 1979. β Π‘.Β 272.
ΠΡΠΈΠΌΠ΅ΡΠ°Π½ΠΈΡ
- β ΠΠΎΠ»ΡΡΠ°Ρ ΡΠΎΠ²Π΅ΡΡΠΊΠ°Ρ ΡΠ½ΡΠΈΠΊΠ»ΠΎΠΏΠ΅Π΄ΠΈΡ, 3 ΠΈΠ·Π΄., Π. Π‘. ΠΠ°ΡΠ΅Π²ΡΠΊΠΈΠΉ.
Wikimedia Foundation. 2010.
ΠΠΎΠΌΠΎΠΆΠ΅ΠΌ Π½Π°ΠΏΠΈΡΠ°ΡΡ ΡΠ΅ΡΠ΅ΡΠ°Ρ
Π‘ΠΈΠ½ΠΎΠ½ΠΈΠΌΡ:
Π·ΠΌΠ΅Ρ, ΡΠ΄Π°Π²
- ΠΠΈΡΠΎΠΌΠ½ΠΈΠΊ
- ΠΠΈΡΠΎΠ½ (Π·ΠΌΠ΅Ρ)
ΠΠΎΠ»Π΅Π·Π½ΠΎΠ΅
PythonImplementations β Python Wiki
Π‘ΠΎΠ΄Π΅ΡΠΆΠ°Π½ΠΈΠ΅
- Π Π΅Π°Π»ΠΈΠ·Π°ΡΠΈΠΈ Python
- ΠΠ°ΡΠΈΠ°Π½ΡΡ CPython
- Π‘ΠΎΠΊΡΠ°ΡΠ΅Π½Π½ΡΠ΅ Π²Π°ΡΠΈΠ°Π½ΡΡ Python
- ΠΡΡΠ³ΠΈΠ΅ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠΈ
- Π Π°Π±ΠΎΡΠΈΠ΅ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠΈ
- ΠΡΠ΅Π΄Π²Π°ΡΠΈΡΠ΅Π»ΡΠ½ΡΠ΅ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠΈ
- Π Π°ΡΡΠΈΡΠ΅Π½ΠΈΡ
- ΠΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡΡ
- Π§ΠΈΡΠ»ΠΎΠ²ΡΠ΅ ΡΡΠΊΠΎΡΠΈΡΠ΅Π»ΠΈ
- ΠΠΎΡ ΠΎΠΆΠΈΠ΅, Π½ΠΎ ΡΠ°Π·Π½ΡΠ΅ ΡΠ·ΡΠΊΠΈ
- Π ΡΠΊΠΎΠ²ΠΎΠ΄ΡΡΠ²Π° ΠΏΠΎ ΡΠ΅ΠΌΠ°ΠΌ
- (ΠΠ΅ΡΠ΅Π»ΠΎ) ΠΡΠ΅ΠΏΡΠΎΡΠ΅ΡΡΠΎΡΡ Python
- Academic Projects
- ΠΠ°ΡΠΈΠ°Π½ΡΡ CPython
ΠΠΎΠ΄ Β«ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠ΅ΠΉΒ» Python ΡΠ»Π΅Π΄ΡΠ΅Ρ ΠΏΠΎΠ½ΠΈΠΌΠ°ΡΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ ΠΈΠ»ΠΈ ΡΡΠ΅Π΄Ρ, ΠΊΠΎΡΠΎΡΠ°Ρ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠΈΠ²Π°Π΅Ρ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΡ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌ, Π½Π°ΠΏΠΈΡΠ°Π½Π½ΡΡ
Π½Π° ΡΠ·ΡΠΊΠ΅ Python, ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½Π½ΠΎΠΌ ΡΡΠ°Π»ΠΎΠ½Π½ΠΎΠΉ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠ΅ΠΉ CPython.
ΠΡΠ»ΠΎ ΠΈ Π΅ΡΡΡ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΠΎΡΠ΄Π΅Π»ΡΠ½ΡΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΡΡ ΠΏΠ°ΠΊΠ΅ΡΠΎΠ², ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΡΡΠΈΡ ΡΠΎ, ΡΡΠΎ ΠΌΡ Π²ΡΠ΅ Π½Π°Π·ΡΠ²Π°Π΅ΠΌ Python, Ρ ΠΎΡΡ Π½Π΅ΠΊΠΎΡΠΎΡΡΠ΅ ΠΈΠ· Π½ΠΈΡ Π±ΠΎΠ»ΡΡΠ΅ ΠΏΠΎΡ ΠΎΠΆΠΈ Π½Π° Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΠ²Ρ ΠΈΠ»ΠΈ Π²Π°ΡΠΈΠ°Π½ΡΡ ΠΊΠ°ΠΊΠΎΠΉ-ΡΠΎ ΡΡΡΠ΅ΡΡΠ²ΡΡΡΠ΅ΠΉ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠΈ, ΡΠ΅ΠΌ Π½Π° ΡΠΎΠ²Π΅ΡΡΠ΅Π½Π½ΠΎ Π½ΠΎΠ²ΡΡ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ ΡΠ·ΡΠΊΠ°.
ΠΠ°ΡΠΈΠ°Π½ΡΡ CPython
ΠΡΠΎ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠΈ, ΠΎΡΠ½ΠΎΠ²Π°Π½Π½ΡΠ΅ Π½Π° ΡΠ΄ΡΠ΅ ΡΡΠ΅Π΄Ρ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ CPython (Π΄Π΅-ΡΠ°ΠΊΡΠΎ ΡΡΠ°Π»ΠΎΠ½Π½Π°Ρ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ Python), Π½ΠΎ Ρ ΡΠ°ΡΡΠΈΡΠ΅Π½Π½ΡΠΌ ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ΠΌ ΠΈΠ»ΠΈ ΡΡΠ½ΠΊΡΠΈΡΠΌΠΈ Π² Π½Π΅ΠΊΠΎΡΠΎΡΡΡ Π°ΡΠΏΠ΅ΠΊΡΠ°Ρ .
CrossTwine Linker β ΠΊΠΎΠΌΠ±ΠΈΠ½Π°ΡΠΈΡ CPython ΠΈ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΠΎΠΉ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ, ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠΈΠ²Π°ΡΡΠ°Ρ ΠΏΠΎΠ²ΡΡΠ΅Π½Π½ΡΡ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡ (Π² Π½Π°ΡΡΠΎΡΡΠ΅Π΅ Π²ΡΠ΅ΠΌΡ ΠΏΡΠΎΠΏΡΠΈΠ΅ΡΠ°ΡΠ½Π°Ρ)
Stackless Python β CPython Ρ ΡΠΏΠΎΡΠΎΠΌ Π½Π° ΠΏΠ°ΡΠ°Π»Π»Π΅Π»ΠΈΠ·ΠΌ Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ ΡΠ°ΡΠΊΠ»Π΅ΡΠΎΠ² ΠΈ ΠΊΠ°Π½Π°Π»ΠΎΠ² (ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ dspython Π΄Π»Ρ Nintendo DS)
Pyston β ΡΠΎΡΠΊ CPython, ΠΏΠ΅ΡΠ²ΠΎΠ½Π°ΡΠ°Π»ΡΠ½ΠΎ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠ°Π½Π½ΡΠΉ Π² Dropbox, Π½ΠΎ ΡΠ΅ΠΏΠ΅ΡΡ Π½Π΅Π·Π°Π²ΠΈΡΠΈΠΌΡΠΌΠΈ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠ°ΠΌΠΈ, ΠΎΡΠΈΠ΅Π½ΡΠΈΡΠΎΠ²Π°Π½Π½ΡΠΉ Π½Π° ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡ, Π²ΠΊΠ»ΡΡΠ°Ρ ΡΡΠΊΠΎΡΠ΅Π½ΠΈΠ΅ Π±Π°ΠΉΡ-ΠΊΠΎΠ΄Π° ΠΈ ΡΠΏΡΠΎΡΠ΅Π½Π½ΡΠΉ JIT.
Cinder, ΡΠΎΡΠΊ CPython ΠΎΡ Instagram, ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΠΈΠΉ ΡΡΠ΄ ΠΎΠΏΡΠΈΠΌΠΈΠ·Π°ΡΠΈΠΉ, ΡΠ°ΠΊΠΈΡ ΠΊΠ°ΠΊ ΠΏΠ΅ΡΠ΅ΠΏΠΈΡΡΠ²Π°Π½ΠΈΠ΅ Π±Π°ΠΉΡ-ΠΊΠΎΠ΄Π° ΠΈ JIT-ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡ ΠΌΠ΅ΡΠΎΠ΄Π° Π·Π° ΡΠ°Π·.

Pyjion, ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΠ΅ JIT Π΄Π»Ρ CPython, ΠΊΠΎΡΠΎΡΠΎΠ΅ ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΡΠ΅Ρ ΠΊΠΎΠ΄ Python Π² CIL (.NET) ΠΈ Π²ΡΠΏΠΎΠ»Π½ΡΠ΅Ρ Π΅Π³ΠΎ Π² ΡΡΠ΅Π΄Π΅ CLR.
unladen-swallow β Β«Π²Π΅ΡΠ²Ρ ΠΎΠΏΡΠΈΠΌΠΈΠ·Π°ΡΠΈΠΈ CPython, ΠΏΡΠ΅Π΄Π½Π°Π·Π½Π°ΡΠ΅Π½Π½Π°Ρ Π΄Π»Ρ ΠΏΠΎΠ»Π½ΠΎΠΉ ΡΠΎΠ²ΠΌΠ΅ΡΡΠΈΠΌΠΎΡΡΠΈ ΠΈ Π·Π½Π°ΡΠΈΡΠ΅Π»ΡΠ½ΠΎΠ³ΠΎ ΡΡΠΊΠΎΡΠ΅Π½ΠΈΡΒ», ΠΈΠ·Π½Π°ΡΠ°Π»ΡΠ½ΠΎ ΡΠ°ΡΡΠΌΠ°ΡΡΠΈΠ²Π°Π»Π°ΡΡ Π΄Π»Ρ ΡΠ»ΠΈΡΠ½ΠΈΡ Ρ CPython Π² ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΠΈΠΈ Ρ PEP 3146, Π½ΠΎ ΡΠ΅ΠΏΠ΅ΡΡ Π½Π΅ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅ΡΡΡ
wpython β ΠΏΠΎΠ²ΡΠΎΡΠ½Π°Ρ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ CPython ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ Β«ΠΊΠΎΠ΄Π° ΡΠ»ΠΎΠ²Π°Β» Π²ΠΌΠ΅ΡΡΠΎ Π±Π°ΠΉΡ-ΠΊΠΎΠ΄Π°
eGenix PyRun β ΡΡΠ΅Π΄Π° Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ Python (CPython + ΡΡΠ°Π½Π΄Π°ΡΡΠ½Π°Ρ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ°), ΡΠΆΠ°ΡΠ°Ρ Π² ΠΎΠ΄ΠΈΠ½ Π΄Π²ΠΎΠΈΡΠ½ΡΠΉ ΡΠ°ΠΉΠ» ΡΠ°Π·ΠΌΠ΅ΡΠΎΠΌ 3β4 ΠΠ
x-python β ΠΈΠ½ΡΠ΅ΡΠΏΡΠ΅ΡΠ°ΡΠΎΡ C Python, Π½Π°ΠΏΠΈΡΠ°Π½Π½ΡΠΉ Π½Π° Python; ΠΏΠΎΠ»Π΅Π·Π½ΠΎ Π² ΠΎΠ±ΡΠ°Π·ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΡΡ ΡΠ΅Π»ΡΡ . ΠΠ»Ρ Π½Π΅Π³ΠΎ ΡΠ°ΠΊΠΆΠ΅ Π΅ΡΡΡ ΠΎΡΠ»Π°Π΄ΡΠΈΠΊ Π±Π°ΠΉΡ-ΠΊΠΎΠ΄Π°
Falcon β ΡΠ΅Π³ΠΈΡΡΡΠΎΠ²Π°Ρ ΠΌΠ°ΡΠΈΠ½Π° Python, ΠΏΠΎΡΡΠ°Π²Π»ΡΠ΅ΠΌΠ°Ρ ΠΊΠ°ΠΊ ΠΌΠΎΠ΄ΡΠ»Ρ ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΡ
Π‘ΠΎΠΊΡΠ°ΡΠ΅Π½Π½ΡΠ΅ Π²Π°ΡΠΈΠ°Π½ΡΡ Python
ΠΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΡΡ ΠΏΠΎΠ΄ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²ΠΎ ΠΏΠΎΠ»Π½ΠΎΠ³ΠΎ ΡΠ·ΡΠΊΠ° + ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΠΎΠΉ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ Π΄Π»Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ Π²ΠΎ Π²ΡΡΡΠΎΠ΅Π½Π½ΡΡ
ΡΡΠ΅Π½Π°ΡΠΈΡΡ
(ΡΠΌ.
ΡΠ°ΠΊΠΆΠ΅ ΡΠ°Π·Π΄Π΅Π» EmbeddedPython)
Π’Π°ΠΊΠΆΠ΅ ΠΏΡΠΎΡΠΌΠΎΡΡΠΈΡΠ΅ ΡΠ°Π·Π΄Π΅Π»Ρ ΠΎ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡΠ°Ρ ΠΈ ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΡΡ Python Π½ΠΈΠΆΠ΅, Π½Π΅ΠΊΠΎΡΠΎΡΡΠ΅ ΠΈΠ· ΠΊΠΎΡΠΎΡΡΡ ΠΌΠΎΠΆΠ½ΠΎ ΠΊΠ²Π°Π»ΠΈΡΠΈΡΠΈΡΠΎΠ²Π°ΡΡ ΠΊΠ°ΠΊ Π²Π°ΡΠΈΠ°Π½ΡΡ CPython.
ΠΡΡΠ³ΠΈΠ΅ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠΈ
ΠΡΠΎ ΠΏΠΎΠ²ΡΠΎΡΠ½ΡΠ΅ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠΈ ΡΠ·ΡΠΊΠ° Python, ΠΊΠΎΡΠΎΡΡΠ΅ Π½Π΅ Π·Π°Π²ΠΈΡΡΡ (ΠΈΠ»ΠΈ ΠΎΠ±ΡΠ·Π°ΡΠ΅Π»ΡΠ½ΠΎ Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΡΡΡ) Ρ ΡΠ΄ΡΠΎΠΌ ΡΡΠ΅Π΄Ρ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ CPython. ΠΠ½ΠΎΠ³ΠΈΠ΅ ΠΈΠ· Π½ΠΈΡ ΠΏΠΎΠ²ΡΠΎΡΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡ (Π±ΠΎΠ»ΡΡΡΡ ΡΠ°ΡΡΡ) ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΠΎΠΉ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ.
ΠΠ±ΡΠ°ΡΠΈΡΠ΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, ΡΡΠΎ Π±ΠΎΠ»ΡΡΠΈΠ½ΡΡΠ²ΠΎ ΡΡΠΈΡ ΠΏΡΠΎΠ΅ΠΊΡΠΎΠ² Π΅ΡΠ΅ Π½Π΅ Π΄ΠΎΡΡΠΈΠ³Π»ΠΈ ΡΠ·ΡΠΊΠΎΠ²ΠΎΠ³ΠΎ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΠΈΡ. ΠΠ΄Π½Π°ΠΊΠΎ Ρ ΠΌΠ½ΠΎΠ³ΠΈΡ ΠΈΠ· Π½ΠΈΡ Π΅ΡΡΡ ΡΠ΅Π»ΠΈ ΠΈ ΡΡΠ½ΠΊΡΠΈΠΈ ΠΈΠ»ΠΈ ΠΎΠ½ΠΈ ΡΠ°Π±ΠΎΡΠ°ΡΡ Π² ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΡΡ ΡΡΠ΅Π΄Π°Ρ , ΠΊΠΎΡΠΎΡΡΠ΅ Π΄Π΅Π»Π°ΡΡ ΠΈΡ ΠΈΠ½ΡΠ΅ΡΠ΅ΡΠ½ΡΠΌΠΈ ΡΠ°ΠΌΠΈ ΠΏΠΎ ΡΠ΅Π±Π΅. ΠΠ΄ΠΈΠ½ΡΡΠ²Π΅Π½Π½ΡΠΌΠΈ ΠΈΠ·Π²Π΅ΡΡΠ½ΡΠΌΠΈ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΡΠΌΠΈ, ΡΠΎΠ²ΠΌΠ΅ΡΡΠΈΠΌΡΠΌΠΈ Ρ Π΄Π°Π½Π½ΠΎΠΉ Π²Π΅ΡΡΠΈΠ΅ΠΉ ΡΠ·ΡΠΊΠ°, ΡΠ²Π»ΡΡΡΡΡ IronPython, Jython ΠΈ PyPy.
Π Π°Π±ΠΎΡΠΈΠ΅ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠΈ
Π‘Π»Π΅Π΄ΡΡΡΠΈΠ΅ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠΈ ΠΌΠΎΠ³ΡΡ Π±ΡΡΡ Π½Π΅ΠΏΠΎΠ»Π½ΡΠΌΠΈ ΠΈΠ»ΠΈ Π΄Π°ΠΆΠ΅ Π½Π΅ΠΏΠΎΠ»Π½ΡΠΌΠΈ, Π½ΠΎ, ΠΏΠΎ ΠΊΡΠ°ΠΉΠ½Π΅ΠΉ ΠΌΠ΅ΡΠ΅, ΠΌΠΎΠΆΠ½ΠΎ ΡΠΊΠ°Π·Π°ΡΡ, ΡΡΠΎ ΠΎΠ½ΠΈ ΡΠ°Π±ΠΎΡΠ°ΡΡ, ΠΏΠΎΡΠΊΠΎΠ»ΡΠΊΡ Ρ Π½ΠΈΠΌΠΈ ΡΠΆΠ΅ ΠΌΠΎΠΆΠ½ΠΎ Π·Π°ΠΏΡΡΠΊΠ°ΡΡ ΡΠΈΠΏΠΈΡΠ½ΡΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ:
PyPy β Python Π½Π° Python, Π²ΠΊΠ»ΡΡΠ°Π΅Ρ ΠΎΡΡΠ»Π΅ΠΆΠΈΠ²Π°ΡΡΠΈΠΉ JIT-ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡ
Jython β Python Π½Π° Java Π΄Π»Ρ ΠΏΠ»Π°ΡΡΠΎΡΠΌΡ Java IronPython Community Edition (IPCE) ΠΏΡΠΎΠ΅ΠΊΡΠ° FePy.
GC, ΡΠΊΡΡΡΡΠ΅ ΠΊΠ»Π°ΡΡΡ ΠΈ ΡΠ°Π±Π»ΠΎΠ½ JIT.Brython β ΡΠΏΠΎΡΠΎΠ± Π·Π°ΠΏΡΡΠΊΠ° Python Π² Π±ΡΠ°ΡΠ·Π΅ΡΠ΅ ΡΠ΅ΡΠ΅Π· ΡΡΠ°Π½ΡΠ»ΡΡΠΈΡ Π² JavaScript
CLPython β Python Π² Common Lisp ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΠΎ ΡΠΈΠΏΠ°Ρ , ΡΠΎΠ±ΡΠ°Π½Π½Π°Ρ Π²ΠΎ Π²ΡΠ΅ΠΌΡ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ
pyjs β (ΡΠΎΡΠΌΠ°Π»ΡΠ½ΠΎ Pyjamas) ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡ Python Π΄Π»Ρ JavaScript ΠΏΠ»ΡΡ ΠΏΠ»Π°ΡΡΠΎΡΠΌΠ° Web/GUI
PyMite β Python Π΄Π»Ρ Π²ΡΡΡΠ°ΠΈΠ²Π°Π΅ΠΌΡΡ ΡΡΡΡΠΎΠΉΡΡΠ²
pyvm β Π²ΠΈΡΡΡΠ°Π»ΡΠ½Π°Ρ ΠΌΠ°ΡΠΈΠ½Π°, ΡΠ²ΡΠ·Π°Π½Π½Π°Ρ Ρ Python, ΠΈ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΡΠΉ ΠΏΠ°ΠΊΠ΅Ρ, ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΡΡΠΈΠΉ ΠΏΠΎΡΡΠΈ Π°Π²ΡΠΎΠ½ΠΎΠΌΠ½ΡΡ ΡΠΈΡΡΠ΅ΠΌΡ Β«ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΠΎΠ³ΠΎ ΠΏΡΠΎΡΡΡΠ°Π½ΡΡΠ²Π°Β» ΡΠ·ΡΠΊ Python, ΠΎΠΏΡΠΈΠΌΠΈΠ·ΠΈΡΠΎΠ²Π°Π½Π½ΡΠΉ Π΄Π»Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ Π²ΠΎ Π²ΡΡΡΠΎΠ΅Π½Π½ΡΡ ΡΡΡΡΠΎΠΉΡΡΠ²Π°Ρ Ρ Π½ΠΈΠ·ΠΊΠΈΠΌ ΡΠ½Π΅ΡΠ³ΠΎΠΏΠΎΡΡΠ΅Π±Π»Π΅Π½ΠΈΠ΅ΠΌΒ» (ΠΎΡΠ΅Π²ΠΈΠ΄Π½ΠΎ, ΠΏΡΠΎΠΏΡΠΈΠ΅ΡΠ°ΡΠ½ΡΠΉ)
tinypy β ΠΌΠΈΠ½ΠΈΠΌΠ°Π»ΠΈΡΡΡΠΊΠ°Ρ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ Python Π² 64K ΠΊΠΎΠ΄Π°
Transcrypt β ΠΡΠ΅ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡ Python 3.6 Π² JavaScript Ρ ΠΊΠΎΠΌΠΏΠ°ΠΊΡΠ½ΡΠΌ ΠΈ Π±ΡΡΡΡΠΎ ΡΠ³Π΅Π½Π΅ΡΠΈΡΠΎΠ²Π°Π½Π½ΡΠΌ ΠΊΠΎΠ΄ΠΎΠΌ, ΠΈΡΡ ΠΎΠ΄Π½ΡΠΌΠΈ ΠΊΠ°ΡΡΠ°ΠΌΠΈ, Π²ΡΡΡΠΎΠ΅Π½Π½ΠΎΠΉ ΠΌΠΈΠ½ΠΈΠΌΠΈΡΠΈΠΊΠ°ΡΠΈΠ΅ΠΉ, ΠΎΠΏΡΠΈΠΎΠ½Π°Π»ΡΠ½ΠΎΠΉ ΡΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΎΠΉ ΠΏΡΠΎΠ²Π΅ΡΠΊΠΎΠΉ ΡΠΈΠΏΠΎΠ², ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠΎΠΉ JSX ΠΎΠ½ΠΈ ΠΌΠΎΠ³ΡΡ Π½Π΅ Π·Π°ΠΏΡΡΠΊΠ°ΡΡ ΡΠΈΠΏΠΈΡΠ½ΡΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ:
Berp β ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ Python 3 Π½Π° Haskell, ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΡΡΠ°Ρ ΠΈΠ½ΡΠ΅ΡΠ°ΠΊΡΠΈΠ²Π½ΡΡ ΡΡΠ΅Π΄Ρ, Π° ΡΠ°ΠΊΠΆΠ΅ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡ
phpython β ΠΈΠ½ΡΠ΅ΡΠΏΡΠ΅ΡΠ°ΡΠΎΡ Python, Π½Π°ΠΏΠΈΡΠ°Π½Π½ΡΠΉ Π½Π° PHP
Pyjaco β ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡ Python Π² JavaScript, ΠΏΠΎΡ ΠΎΠΆΠΈΠΉ Π½Π° Pyjs, Π½ΠΎ Π±ΠΎΠ»Π΅Π΅ Π»Π΅Π³ΠΊΠΈΠΉ
Pystacho, ΠΊΠ°ΠΊ ΠΈ Skulpt, Python Π² JavaScript .
org/web/20041206021225if_/http://www.twistedmatrix.com/users/z3p/files/pyvm2.py β ΠΈΠ½ΡΠ΅ΡΠΏΡΠ΅ΡΠ°ΡΠΎΡ Π±Π°ΠΉΡ-ΠΊΠΎΠ΄Π° CPython 2, Π½Π°ΠΏΠΈΡΠ°Π½Π½ΡΠΉ Π½Π° Python 2, Π·Π°Π±ΡΠΎΡΠ΅Π½Π½ΡΠΉ, ΡΠΏΠΎΠΌΡΠ½ΡΡΡΠΉ Π² ΡΠΏΠΈΡΠΊΠ΅ ΡΠ°ΡΡΡΠ»ΠΊΠΈ PyPy Π² 2003 Π³.Skulpt β Python Π² JavaScript
Typhon β ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ Python Π½Π° ΠΎΡΠ½ΠΎΠ²Π΅ Rubinius
Violet β ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ Python Swift
ΠΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡΡ
ΠΡΠΈ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡΡ ΠΎΠ±ΡΡΠ½ΠΎ ΡΠ΅Π°Π»ΠΈΠ·ΡΡΡ ΡΡΠΎ-ΡΠΎ Π±Π»ΠΈΠ·ΠΊΠΎΠ΅ ΠΊ Python, Ρ ΠΎΡΡ Π½Π΅ΠΊΠΎΡΠΎΡΡΠ΅ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡΡ ΠΌΠΎΠ³ΡΡ Π½Π°ΠΊΠ»Π°Π΄ΡΠ²Π°ΡΡ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈΡ, ΠΈΠ·ΠΌΠ΅Π½ΡΡΡΠΈΠ΅ ΠΏΡΠΈΡΠΎΠ΄Ρ ΡΠ·ΡΠΊΠ°:
Cython β ΡΠΈΡΠΎΠΊΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΡΠΉ ΠΎΠΏΡΠΈΠΌΠΈΠ·ΠΈΡΡΡΡΠΈΠΉ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡ Python-to-C, Π³Π΅Π½Π΅ΡΠ°ΡΠΎΡ ΠΌΠΎΠ΄ΡΠ»Π΅ΠΉ ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΡ CPython ΠΈ ΡΠ·ΡΠΊ-ΠΎΠ±ΠΎΠ»ΠΎΡΠΊΠ° Π΄Π»Ρ ΡΠ²ΡΠ·ΡΠ²Π°Π½ΠΈΡ Π²Π½Π΅ΡΠ½ΠΈΡ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊ. ΠΠ·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΡΠ΅Ρ ΡΠΎ ΡΡΠ΅Π΄ΠΎΠΉ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ CPython ΠΈ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅Ρ Π²ΡΡΡΠ°ΠΈΠ²Π°Π½ΠΈΠ΅ CPython Π² Π°Π²ΡΠΎΠ½ΠΎΠΌΠ½ΡΠ΅ Π΄Π²ΠΎΠΈΡΠ½ΡΠ΅ ΡΠ°ΠΉΠ»Ρ.
Nuitka β ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡ Python-C++, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΠΈΠΉ libpython Π²ΠΎ Π²ΡΠ΅ΠΌΡ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΠΈ ΠΏΡΡΠ°ΡΡΠΈΠΉΡΡ ΠΎΠΏΡΠΈΠΌΠΈΠ·ΠΈΡΠΎΠ²Π°ΡΡ Π²ΡΠ΅ΠΌΡ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΠΈ ΠΈ Π²ΡΠ΅ΠΌΡ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ. ΠΠ·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΡΠ΅Ρ ΡΠΎ ΡΡΠ΅Π΄ΠΎΠΉ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ CPython.

MyPyC ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΡΠ΅Ρ ΠΏΠΎΠ»Π½ΠΎΡΡΡΡ ΡΠΈΠΏΠΈΠ·ΠΈΡΠΎΠ²Π°Π½Π½ΡΠΉ ΠΊΠΎΠ΄ Python Π² ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΠ΅ C Π½Π° ΠΎΡΠ½ΠΎΠ²Π΅ mypy.
2c-python β ΡΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠΉ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡ Python-to-C, ΠΎΡΠ΅Π²ΠΈΠ΄Π½ΠΎ ΠΏΠ΅ΡΠ΅Π²ΠΎΠ΄ΡΡΠΈΠΉ Π±Π°ΠΉΡ-ΠΊΠΎΠ΄ CPython Π² C Front-End β Π½Π΅Π·Π°Π²Π΅ΡΡΠ΅Π½Π½Π°Ρ ΡΠ°Π±ΠΎΡΠ° ΠΏΠΎ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΠΈ ΠΊΠΎΠ΄Π° Python Π² ΠΈΠ½ΡΡΠ°ΡΡΡΡΠΊΡΡΡΠ΅ GCC
Pyc β Π²ΡΠΏΠΎΠ»Π½ΡΠ΅Ρ ΡΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠΉ Π°Π½Π°Π»ΠΈΠ· Π΄Π»Ρ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΠΈ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌ Python, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ ΠΌΠ΅ΡΠΎΠ΄Ρ, Π°Π½Π°Π»ΠΎΠ³ΠΈΡΠ½ΡΠ΅ Shed Skin
Shed Skin β ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡ Python-C++, ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½Π½ΡΠΉ Π½Π΅ΡΠ²Π½ΠΎ ΡΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈ ΡΠΈΠΏΠΈΠ·ΠΈΡΠΎΠ²Π°Π½Π½ΡΠΌ ΠΏΠΎΠ΄ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²ΠΎΠΌ ΡΠ·ΡΠΊΠ°, Π΄Π»Ρ ΠΊΠΎΡΠΎΡΠΎΠ³ΠΎ ΠΎΠ½ ΠΌΠΎΠΆΠ΅Ρ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈ Π²ΡΠ²ΠΎΠ΄ΠΈΡΡ ΡΡΡΠ΅ΠΊΡΠΈΠ²Π½ΡΠ΅ ΡΠΈΠΏΡ ΠΏΠΎΡΡΠ΅Π΄ΡΡΠ²ΠΎΠΌ Π°Π½Π°Π»ΠΈΠ·Π° Π²ΡΠ΅ΠΉ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ
unPython β ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡ Python-C Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ Π°Π½Π½ΠΎΡΠ°ΡΠΈΠΉ ΡΠΈΠΏΠΎΠ²
VOC β Π’ΡΠ°Π½ΡΠΏΠΈΠ»ΡΡΠΎΡ, ΠΊΠΎΡΠΎΡΡΠΉ ΠΏΡΠ΅ΠΎΠ±ΡΠ°Π·ΡΠ΅Ρ Π±Π°ΠΉΡ-ΠΊΠΎΠ΄ Python Π² Π±Π°ΠΉΡ-ΠΊΠΎΠ΄ Java.
Π§ΠΈΡΠ»ΠΎΠ²ΡΠ΅ ΡΡΠΊΠΎΡΠΈΡΠ΅Π»ΠΈ
Numba β ΠΎΠΏΡΠΈΠΌΠΈΠ·ΠΈΡΡΡΡΠΈΠΉ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡ ΡΡΠ΅Π΄Ρ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ Ρ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠΎΠΉ NumPy Π΄Π»Ρ Python
Pythran β ΠΎΠΏΠ΅ΡΠ΅ΠΆΠ°ΡΡΠΈΠΉ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡ Π΄Π»Ρ ΠΏΠΎΠ΄ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²Π° Python Ρ ΡΠΏΠΎΡΠΎΠΌ Π½Π° Π½Π°ΡΡΠ½ΡΠ΅ Π²ΡΡΠΈΡΠ»Π΅Π½ΠΈΡ
Copperhead β ΡΠΈΡΡΠΎ ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»ΡΠ½ΡΠΉ Python Ρ ΠΏΠ°ΡΠ°Π»Π»Π΅Π»ΡΠ½ΡΠΌΠΈ Π΄Π°Π½Π½ΡΠΌΠΈ, ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΡΠ΅ΡΡΡ Π² ΠΌΠ½ΠΎΠ³ΠΎΡΠ΄Π΅ΡΠ½ΡΠ΅ ΠΈ Π³ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠ΅ ΡΠ΅ΡΠ²Π΅ΡΠ½ΡΠ΅ ΡΠ°ΡΡΠΈ
Parakeet β ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ Π΄Π»Ρ ΡΠΈΡΠ»ΠΎΠ²ΠΎΠ³ΠΎ ΠΏΠΎΠ΄ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²Π° Python
ΠΠΎΡ ΠΎΠΆΠΈΠ΅, Π½ΠΎ ΡΠ°Π·Π½ΡΠ΅ ΡΠ·ΡΠΊΠΈ
ΠΡΠΈ ΡΠ·ΡΠΊΠΈ Π½Π΅ ΠΏΡΡΠ°ΡΡΡΡ Π±ΡΡΡ Π½Π°ΠΏΡΡΠΌΡΡ ΡΠΎΠ²ΠΌΠ΅ΡΡΠΈΠΌΡΠΌΠΈ Π΄Π°ΠΆΠ΅ Ρ ΠΏΠΎΠ΄ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²ΠΎΠΌ Python, ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΡ ΡΠ²ΠΎΠΉ ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½ΡΠΉ Π½Π°Π±ΠΎΡ ΡΡΠ½ΠΊΡΠΈΠΉ:
Alore β ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΡΠ΅ΠΌΡΠΉ ΡΠ·ΡΠΊ Ρ ΠΎΠΏΡΠΈΠΎΠ½Π°Π»ΡΠ½ΠΎΠΉ ΡΠΈΠΏΠΈΠ·Π°ΡΠΈΠ΅ΠΉ ΠΈ ΡΠΈΠ½ΡΠ°ΠΊΡΠΈΡΠΎΠΌ, Π²Π΄ΠΎΡ Π½ΠΎΠ²Π»Π΅Π½Π½ΡΠΌ Python/Ruby; ΠΏΠ»Π°Π½ΠΈΡΡΠ΅ΡΡΡ ΠΏΠΎΡΡΡΠΎΠΈΡΡ ΠΌΠΎΡΡ ΠΠ»ΠΎΡΠ΅-ΠΠΈΡΠΎΠ½; ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠ° Π±ΡΠ»Π° ΠΏΠ΅ΡΠ΅Π½Π΅ΡΠ΅Π½Π° Π½Π° mypy (ΡΠΌ.
Π½ΠΈΠΆΠ΅)Cobra
Converge β Π²Π΄ΠΎΡ Π½ΠΎΠ²Π»Π΅Π½ Python, Haskell, Icon ΠΈ Smalltalk, ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΠ΅Ρ ΠΌΠ°ΠΊΡΠΎΡΡ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΌΠΎΠΆΠ½ΠΎ ΠΎΡΠ΅Π½ΠΈΡΡ Π²ΠΎ Π²ΡΠ΅ΠΌΡ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΠΈ
Delight β Π½Π° ΠΎΡΠ½ΠΎΠ²Π΅ ΡΠ·ΡΠΊ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ D
Genie β ΠΎΡΠ½ΠΎΠ²Π°Π½ Π½Π° ΡΠ΅Ρ ΠΆΠ΅ ΠΎΡΠ½ΠΎΠ²Π°Ρ (Gtk+, GNOME), ΡΡΠΎ ΠΈ ΡΠ·ΡΠΊ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ Vala, ΠΏΡΠ΅Π΄ΠΏΠΎΠ»ΠΎΠΆΠΈΡΠ΅Π»ΡΠ½ΠΎ Π²Π΄ΠΎΡ Π½ΠΎΠ²Π»Π΅Π½Π½ΡΠΉ Boo
mypy β Python Ρ ΠΎΠΏΡΠΈΠΎΠ½Π°Π»ΡΠ½ΠΎΠΉ ΡΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΎΠΉ ΡΠΈΠΏΠΈΠ·Π°ΡΠΈΠ΅ΠΉ ΠΈ Π½Π΅ΠΊΠΎΡΠΎΡΡΠΌ Π»ΠΎΠΊΠ°Π»ΡΠ½ΡΠΌ Π²ΡΠ²ΠΎΠ΄ΠΎΠΌ ΡΠΈΠΏΠΎΠ² , C++ ΠΈ JS, Π²ΠΊΠ»ΡΡΠ°Π΅Ρ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΈΠ·ΠΎΠ²Π°Π½Π½ΡΠ΅ ΡΠΈΠΏΡ, ΠΌΠ°ΠΊΡΠΎΡΡ ΠΈ Ρ. Π΄.
Pythonect β ΡΠ·ΡΠΊ, ΠΎΡΠΈΠ΅Π½ΡΠΈΡΠΎΠ²Π°Π½Π½ΡΠΉ Π½Π° ΠΏΠΎΡΠΎΠΊ Π΄Π°Π½Π½ΡΡ , ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΠΈΠΉ Π±Π°Π·ΠΎΠ²ΡΠΉ ΡΠΈΠ½ΡΠ°ΠΊΡΠΈΡ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠΉ Python, ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π½ΡΠΉ Π² Python ΠΈ ΠΈΠ½ΡΠ΅Π³ΡΠΈΡΠΎΠ²Π°Π½Π½ΡΠΉ ΡΠΎ ΡΡΠ΅Π΄ΠΎΠΉ Python
ΠΠ°ΡΠΈΡΠ΅Π½Π½ΡΠΉ ΡΠ·ΡΠΊ Roket β ΠΈΠ½ΡΠ΅ΡΠΏΡΠ΅ΡΠ°ΡΠΎΡ Python-ΠΏΠΎΠ΄ΠΎΠ±Π½ΠΎΠ³ΠΎ ΡΠ·ΡΠΊΠ° Π΄Π»Ρ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ, Π³Π΄Π΅ ΡΡΠ΅Π±ΡΠ΅ΡΡΡ Β«ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½Π½ΠΎΠ΅ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ PythonΒ». ΠΏΠΎΠ΄ΡΠΎΠ±Π½Π΅Π΅)
Serpentine β ΡΠ·ΡΠΊ Ρ Python-ΠΏΠΎΠ΄ΠΎΠ±Π½ΡΠΌ ΡΠΈΠ½ΡΠ°ΠΊΡΠΈΡΠΎΠΌ Π΄Π»Ρ Π²ΠΈΡΡΡΠ°Π»ΡΠ½ΠΎΠΉ ΠΌΠ°ΡΠΈΠ½Ρ Dalvik
Wirbel β ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΡΠ΅ΠΌΡΠΉ ΡΠ·ΡΠΊ Ρ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈΡΠΌΠΈ, Π°Π½Π°Π»ΠΎΠ³ΠΈΡΠ½ΡΠΌΠΈ Shed Skin (ΡΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈ ΡΠΈΠΏΠΈΠ·ΠΈΡΠΎΠ²Π°Π½Π½ΡΠ΅ ΠΈΠΌΠ΅Π½Π°, ΡΠΏΠΈΡΠΊΠΈ Π½Π΅ ΠΌΠΎΠ³ΡΡ ΡΠΌΠ΅ΡΠΈΠ²Π°ΡΡ ΡΠ»Π΅ΠΌΠ΅Π½ΡΡ ΡΠ°Π·Π½ΡΡ ΡΠΈΠΏΠΎΠ²), Π±ΠΎΠ»ΡΡΠ΅ Π½Π΅ ΡΠ°Π·ΡΠ°Π±Π°ΡΡΠ²Π°Π΅ΡΡΡ Π°ΠΊΡΠΈΠ²Π½ΠΎ ΠΏΠΎ ΡΠΎΡΡΠΎΡΠ½ΠΈΡ Π½Π° 21 ΠΈΡΠ»Ρ 2011 Π³.

Π‘ΡΠ°Π²Π½Π΅Π½ΠΈΡ:
Π‘ΡΠ°Π²Π½Π΅Π½ΠΈΡ Genie ΠΈ Wirbel ΠΈ Genie ΠΈ Python, ΠΏΡΠΎΠ²Π΅Π΄Π΅Π½Π½ΡΠ΅ Π²Π΅Π΄ΡΡΠΈΠΌ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠΌ Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΠ²Π° Puppy Linux Π ΡΠΊΠΎΠ²ΠΎΠ΄ΡΡΠ²Π° ΠΏΠΎ ΡΠ΅ΠΌΠ°ΠΌ
EmbeddedPython
ΠΠΈΡΡΡΠΈΠ±ΡΡΠΈΠ²Ρ Python
(ΠΠ΅ΡΠ΅Π»ΡΠ΅) ΠΡΠ΅ΠΏΡΠΎΡΠ΅ΡΡΠΎΡΡ Python
ΠΡΡΡ Π΄Π°ΠΆΠ΅ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΠΈΡΠΎΠ½ΠΈΡΠ½ΡΡ Π΄ΠΈΠ°Π»Π΅ΠΊΡΠΎΠ² Python, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΌΠΎΠ³ΡΡ ΠΏΠΎΠΊΠ°Π·Π°ΡΡΡΡ Π²Π°ΠΌ Π·Π°Π±Π°Π²Π½ΡΠΌΠΈ.
Like, Python
LOLPython
Academic Projects
Π Π΅Π°Π»ΠΈΠ·Π°ΡΠΈΠΈ ΠΈ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡΡ Python Π±ΡΠ»ΠΈ ΡΠ΅ΠΌΠΎΠΉ ΡΠ°Π·Π»ΠΈΡΠ½ΡΡ ΡΡΠ°ΡΠ΅ΠΉ ΠΈ Π΄ΠΈΡΡΠ΅ΡΡΠ°ΡΠΈΠΉ. Π’Π΅, ΠΊΠΎΡΠΎΡΡΠ΅, ΠΏΠΎ-Π²ΠΈΠ΄ΠΈΠΌΠΎΠΌΡ, Π½Π΅ ΠΏΠΎΠ»ΡΡΠΈΠ»ΠΈ Π΄Π°Π»ΡΠ½Π΅ΠΉΡΠ΅ΠΉ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ, ΠΏΠ΅ΡΠ΅ΡΠΈΡΠ»Π΅Π½Ρ Π·Π΄Π΅ΡΡ:
QGen: ΡΡΠ°Π½ΡΠ»ΡΡΠΎΡ Python Π² Qt/C++ β ΠΏΡΠΎΡΡΠΎΠΉ ΡΡΠ°Π½ΡΠ»ΡΡΠΎΡ, ΠΎΠΏΠΈΡΠ°Π½Π½ΡΠΉ Π² ΠΌΠ°Π³ΠΈΡΡΠ΅ΡΡΠΊΠΎΠΉ Π΄ΠΈΡΡΠ΅ΡΡΠ°ΡΠΈΠΈ 2004 Π³.
Starkiller β ΡΡΠ°Π½ΡΠ»ΡΡΠΎΡ Python Π² C++, Ρ ΠΎΠ±Π·ΠΎΡΠΎΠΌ ΡΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠΎΠ², Π² ΠΌΠ°Π³ΠΈΡΡΠ΅ΡΡΠΊΠΎΠΉ Π΄ΠΈΡΡΠ΅ΡΡΠ°ΡΠΈΠΈ 2004 Π³. (Π°Π²ΡΠΎΡΡΠΊΠΈΠΉ ΡΠ°ΠΉΡ)
ΠΡΠ° ΡΡΡΠ°Π½ΠΈΡΠ° ΠΏΡΠΈΠ·Π²Π°Π½Π° Π·Π°ΠΌΠ΅Π½ΠΈΡΡ ΡΡΡΠ°Π½ΠΈΡΡ, ΡΠ°Π½Π΅Π΅ ΡΡΡΠ΅ΡΡΠ²ΠΎΠ²Π°Π²ΡΡΡ ΠΊΠ°ΠΊ Β«ΠΠΈΡΠ½ΡΠ΅ Π·Π°ΠΌΠ΅ΡΠΊΠΈ ΠΡΠΌΠ΅ΡΠΎΠ½Π° ΠΡΡΠ΄Π° ΠΎ Π²Π°ΡΠΈΠ°Π½ΡΠ°Ρ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠΈ PythonΒ».
Π’Π°ΠΊΠΆΠ΅ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΠ΅Ρ ΠΈΠ½ΡΠ΅ΡΠ΅Ρ IntegratingPythonWithOtherLanguages, Π² ΠΊΠΎΡΠΎΡΠΎΠΌ ΡΡΠ΅Π΄ΠΈ ΠΏΡΠΎΡΠΈΡ
Π²Π°ΡΠΈΠ°Π½ΡΠΎΠ² ΡΠΏΠΎΠΌΠΈΠ½Π°Π΅ΡΡΡ Π²ΡΡΡΠ°ΠΈΠ²Π°Π½ΠΈΠΉ Python Π² Π΄ΡΡΠ³ΠΈΠ΅ ΡΠ·ΡΠΊΠΈ.CategoryImplementations
Wikipedia API β Wikipedia Python API 0.5.3 Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΡ
Wikipedia-APIβ ΠΏΡΠΎΡΡΠ°Ρ Π² ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠΈ ΠΎΠ±ΠΎΠ»ΠΎΡΠΊΠ° Python Π΄Π»Ρ API ΠΠΈΠΊΠΈΠΏΠ΅Π΄ΠΈΠΈ. ΠΠ½ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅Ρ ΠΈΠ·Π²Π»Π΅ΡΠ΅Π½ΠΈΠ΅ ΡΠ΅ΠΊΡΡΠΎΠ², ΡΠ°Π·Π΄Π΅Π»ΠΎΠ², ΡΡΡΠ»ΠΎΠΊ, ΠΊΠ°ΡΠ΅Π³ΠΎΡΠΈΠΉ, ΠΏΠ΅ΡΠ΅Π²ΠΎΠ΄ΠΎΠ² ΠΈ Ρ. Π΄. ΠΈΠ· ΠΠΈΠΊΠΈΠΏΠ΅Π΄ΠΈΠΈ. ΠΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΡ ΡΠΎΠ΄Π΅ΡΠΆΠΈΡ ΡΡΠ°Π³ΠΌΠ΅Π½ΡΡ ΠΊΠΎΠ΄Π° Π΄Π»Ρ Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ ΡΠ°ΡΠΏΡΠΎΡΡΡΠ°Π½Π΅Π½Π½ΡΡ Π²Π°ΡΠΈΠ°Π½ΡΠΎΠ² ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ.Π£ΡΡΠ°Π½ΠΎΠ²ΠΊΠ°
ΠΠ»Ρ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ ΡΡΠΎΠ³ΠΎ ΠΏΠ°ΠΊΠ΅ΡΠ° ΡΡΠ΅Π±ΡΠ΅ΡΡΡ ΠΊΠ°ΠΊ ΠΌΠΈΠ½ΠΈΠΌΡΠΌ Python 3.4, ΠΏΠΎΡΠΊΠΎΠ»ΡΠΊΡ ΠΎΠ½ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ IntEnum.
pip3 ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ wikipedia-api
ΠΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅
Π¦Π΅Π»ΡΡ
Wikipedia-APIΡΠ²Π»ΡΠ΅ΡΡΡ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ ΠΏΡΠΎΡΡΠΎΠ³ΠΎ ΠΈ ΡΠ΄ΠΎΠ±Π½ΠΎΠ³ΠΎ Π² ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠΈ API Π΄Π»Ρ ΠΏΠΎΠ»ΡΡΠ΅Π½ΠΈΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ ΠΈΠ· ΠΠΈΠΊΠΈΠΏΠ΅Π΄ΠΈΠΈ. ΠΠΈΠΆΠ΅ ΠΏΡΠΈΠ²Π΅Π΄Π΅Π½Ρ ΠΏΡΠΈΠΌΠ΅ΡΡ ΡΠ°ΡΠΏΡΠΎΡΡΡΠ°Π½Π΅Π½Π½ΡΡ Π²Π°ΡΠΈΠ°Π½ΡΠΎΠ² ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ.ΠΠΌΠΏΠΎΡΡ
ΠΈΠΌΠΏΠΎΡΡ wikipediaapi
ΠΠ°ΠΊ ΠΏΠΎΠ»ΡΡΠΈΡΡ ΠΎΠ΄Π½Ρ ΡΡΡΠ°Π½ΠΈΡΡ
ΠΠΎΠ»ΡΡΠΈΡΡ ΠΎΠ΄Π½Ρ ΡΡΡΠ°Π½ΠΈΡΡ ΠΎΡΠ΅Π½Ρ ΠΏΡΠΎΡΡΠΎ.
ΠΡ Π΄ΠΎΠ»ΠΆΠ½Ρ ΠΈΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·ΠΈΡΠΎΠ²Π°ΡΡ ΠΠ±ΡΠ΅ΠΊΡ ΠΠΈΠΊΠΈΠΏΠ΅Π΄ΠΈΠΈΠΈ Π·Π°ΠΏΡΠΎΡΠΈΡΠ΅ ΡΡΡΠ°Π½ΠΈΡΡ ΠΏΠΎ Π΅Π΅ Π½Π°Π·Π²Π°Π½ΠΈΡ. Π―Π·ΡΠΊ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠ° Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±ΡΡΡ ΠΎΠ΄Π½ΠΈΠΌ ΠΈΠ· ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅ΠΌΡΡ ΡΠ·ΡΠΊΠΎΠ².ΠΈΠΌΠΏΠΎΡΡ Π²ΠΈΠΊΠΈΠΏΠ΅Π΄ΠΈΠΈΠ°ΠΏΠΈ wiki_wiki = wikipediaapi.Wikipedia('en') page_py = wiki_wiki.page('Python_(ΡΠ·ΡΠΊ_ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ)')ΠΠ°ΠΊ ΠΏΡΠΎΠ²Π΅ΡΠΈΡΡ, ΡΡΡΠ΅ΡΡΠ²ΡΠ΅Ρ Π»ΠΈ Π²ΠΈΠΊΠΈ-ΡΡΡΠ°Π½ΠΈΡΠ°
ΠΠ»Ρ ΠΏΡΠΎΠ²Π΅ΡΠΊΠΈ ΡΡΡΠ΅ΡΡΠ²ΠΎΠ²Π°Π½ΠΈΡ ΡΡΡΠ°Π½ΠΈΡΡ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΡΠ½ΠΊΡΠΈΡ
exists.page_py = wiki_wiki.page('Python_(ΡΠ·ΡΠΊ_ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ)') print("Π‘ΡΡΠ°Π½ΠΈΡΠ° - ΡΡΡΠ΅ΡΡΠ²ΡΠ΅Ρ: %s" % page_py.exists()) # Π‘ΡΡΠ°Π½ΠΈΡΠ° - ΡΡΡΠ΅ΡΡΠ²ΡΠ΅Ρ: True page_missing = wiki_wiki.page('NonExistingPageWithStrangeName') print("Π‘ΡΡΠ°Π½ΠΈΡΠ° - ΡΡΡΠ΅ΡΡΠ²ΡΠ΅Ρ: %s" % page_missing.exists()) # Π‘ΡΡΠ°Π½ΠΈΡΠ° β ΡΡΡΠ΅ΡΡΠ²ΡΠ΅Ρ: FalseΠΠ°ΠΊ ΠΏΠΎΠ»ΡΡΠΈΡΡ ΡΠ²ΠΎΠ΄ΠΊΡ ΡΡΡΠ°Π½ΠΈΡΡ
ΠΠ»Π°ΡΡ
Π‘ΡΡΠ°Π½ΠΈΡΠ° ΠΠΈΠΊΠΈΠΏΠ΅Π΄ΠΈΠΈΠΈΠΌΠ΅Π΅Ρ ΡΠ²ΠΎΠΉΡΡΠ²ΠΎΡΠ²ΠΎΠ΄ΠΊΠ°, ΠΊΠΎΡΠΎΡΠΎΠ΅ Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ ΠΎΠΏΠΈΡΠ°Π½ΠΈΠ΅ Π²ΠΈΠΊΠΈ-ΡΡΡΠ°Π½ΠΈΡΡ.ΠΈΠΌΠΏΠΎΡΡ Π²ΠΈΠΊΠΈΠΏΠ΅Π΄ΠΈΠΈΠ°ΠΏΠΈ wiki_wiki = wikipediaapi.Wikipedia('en') print("Π‘ΡΡΠ°Π½ΠΈΡΠ° - ΠΠ°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ: %s" % page_py.
title)
# Π‘ΡΡΠ°Π½ΠΈΡΠ° - ΠΠ°Π·Π²Π°Π½ΠΈΠ΅: Python (ΡΠ·ΡΠΊ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ)
print("Π‘ΡΡΠ°Π½ΠΈΡΠ° - Π‘Π²ΠΎΠ΄ΠΊΠ°: %s" % page_py.summary[0:60])
# Π‘ΡΡΠ°Π½ΠΈΡΠ° β Π Π΅Π·ΡΠΌΠ΅: Python β ΡΡΠΎ ΡΠΈΡΠΎΠΊΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΡΠΉ ΡΠ·ΡΠΊ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ Π²ΡΡΠΎΠΊΠΎΠ³ΠΎ ΡΡΠΎΠ²Π½Ρ Π΄Π»Ρ
ΠΠ°ΠΊ ΠΏΠΎΠ»ΡΡΠΈΡΡ URL ΡΡΡΠ°Π½ΠΈΡΡ
WikipediaPageΠΈΠΌΠ΅Π΅Ρ Π΄Π²Π° ΡΠ²ΠΎΠΉΡΡΠ²Π° Ρ URL-Π°Π΄ΡΠ΅ΡΠΎΠΌ ΡΡΡΠ°Π½ΠΈΡΡ. ΠΡΠΎfullurlΠΈcanonicalurl.ΠΏΠ΅ΡΠ°ΡΡ (page_py.fullurl) # https://en.wikipedia.org/wiki/Python_(ΡΠ·ΡΠΊ_ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ) ΠΏΠ΅ΡΠ°ΡΡ (page_py.canonicalurl) # https://en.wikipedia.org/wiki/Python_(ΡΠ·ΡΠΊ_ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ)
ΠΠ°ΠΊ ΠΏΠΎΠ»ΡΡΠΈΡΡ ΠΏΠΎΠ»Π½ΡΠΉ ΡΠ΅ΠΊΡΡ
Π§ΡΠΎΠ±Ρ ΠΏΠΎΠ»ΡΡΠΈΡΡ ΠΏΠΎΠ»Π½ΡΠΉ ΡΠ΅ΠΊΡΡ ΡΡΡΠ°Π½ΠΈΡΡ ΠΠΈΠΊΠΈΠΏΠ΅Π΄ΠΈΠΈ, Π²Ρ Π΄ΠΎΠ»ΠΆΠ½Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΠ²ΠΎΠΉΡΡΠ²ΠΎ
text, ΠΊΠΎΡΠΎΡΠΎΠ΅ ΡΠΎΠ·Π΄Π°Π΅Ρ ΡΠ΅ΠΊΡΡ ΡΡΡΠ°Π½ΠΈΡΡ ΠΊΠ°ΠΊ ΠΎΠ±ΡΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΠ΅ ΡΠ΅Π·ΡΠΌΠ΅ ΠΈ ΡΠ°Π·Π΄Π΅Π»ΠΎΠ² Ρ ΠΈΡ Π½Π°Π·Π²Π°Π½ΠΈΡΠΌΠΈ ΠΈ ΡΠ΅ΠΊΡΡΠ°ΠΌΠΈ.wiki_wiki = wikipediaapi.ΠΠΈΠΊΠΈΠΏΠ΅Π΄ΠΈΡ( ΡΠ·ΡΠΊ = 'en', extract_format=wikipediaapi.ExtractFormat.WIKI ) p_wiki = wiki_wiki.page("Π’Π΅ΡΡ 1") ΠΏΠ΅ΡΠ°ΡΡ(p_wiki.
ΡΠ΅ΠΊΡΡ)
# Π Π΅Π·ΡΠΌΠ΅
# Π‘Π΅ΠΊΡΠΈΡ 1
# Π’Π΅ΠΊΡΡ ΡΠ°Π·Π΄Π΅Π»Π° 1
# Π Π°Π·Π΄Π΅Π» 1.1
# Π’Π΅ΠΊΡΡ ΡΠ°Π·Π΄Π΅Π»Π° 1.1
# ...
wiki_html = wikipediaapi.ΠΠΈΠΊΠΈΠΏΠ΅Π΄ΠΈΡ(
ΡΠ·ΡΠΊ = 'en',
extract_format=wikipediaapi.ExtractFormat.HTML
)
p_html = wiki_html.page("Π’Π΅ΡΡ 1")
ΠΏΠ΅ΡΠ°ΡΡ (p_html.ΡΠ΅ΠΊΡΡ)
# Π‘Π²ΠΎΠ΄ΠΊΠ°
#Π Π°Π·Π΄Π΅Π» 1
#Π’Π΅ΠΊΡΡ ΡΠ°Π·Π΄Π΅Π»Π° 1
#Π Π°Π·Π΄Π΅Π» 1.1
#Π’Π΅ΠΊΡΡ ΡΠ°Π·Π΄Π΅Π»Π° 1.1
# ...ΠΠ°ΠΊ ΠΏΠΎΠ»ΡΡΠΈΡΡ ΡΠ°Π·Π΄Π΅Π»Ρ ΡΡΡΠ°Π½ΠΈΡΡ
Π§ΡΠΎΠ±Ρ ΠΏΠΎΠ»ΡΡΠΈΡΡ Π²ΡΠ΅ ΡΠ°Π·Π΄Π΅Π»Ρ Π²Π΅ΡΡ Π½Π΅Π³ΠΎ ΡΡΠΎΠ²Π½Ρ ΡΡΡΠ°Π½ΠΈΡΡ, Π²Ρ Π΄ΠΎΠ»ΠΆΠ½Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΠ²ΠΎΠΉΡΡΠ²ΠΎ
section. ΠΠ½ Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ ΡΠΏΠΈΡΠΎΠΊWikipediaPageSection, ΠΏΠΎΡΡΠΎΠΌΡ Π²Π°ΠΌ Π½ΡΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΠ΅ΠΊΡΡΡΠΈΡ, ΡΡΠΎΠ±Ρ ΠΏΠΎΠ»ΡΡΠΈΡΡ Π²ΡΠ΅ ΠΏΠΎΠ΄ΡΠ°Π·Π΄Π΅Π»Ρ.def print_sections (ΡΠ°Π·Π΄Π΅Π»Ρ, ΡΡΠΎΠ²Π΅Π½Ρ = 0): Π΄Π»Ρ s Π² ΡΠ°Π·Π΄Π΅Π»Π°Ρ : print("%s: %s - %s" % ("*" * (ΡΡΠΎΠ²Π΅Π½Ρ + 1), s.title, s.text[0:40])) print_sections(s.sections, ΡΡΠΎΠ²Π΅Π½Ρ + 1) print_sections(page_py.sections) # *: ΠΡΡΠΎΡΠΈΡ - Python Π±ΡΠ» Π·Π°Π΄ΡΠΌΠ°Π½ Π² ΠΊΠΎΠ½ΡΠ΅ 1980-Π΅, # *: ΠΡΠΎΠ±Π΅Π½Π½ΠΎΡΡΠΈ ΠΈ ΡΠΈΠ»ΠΎΡΠΎΡΠΈΡ β Python β ΡΡΠΎ ΠΌΡΠ»ΡΡΠΈΠΏΠ°ΡΠ°Π΄ΠΈΠ³ΠΌΠ°Π»ΡΠ½ΠΎΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ l # *: Π‘ΠΈΠ½ΡΠ°ΠΊΡΠΈΡ ΠΈ ΡΠ΅ΠΌΠ°Π½ΡΠΈΠΊΠ° β Python Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±ΡΡΡ Π»Π΅Π³ΠΊΠΎ ΡΠΈΡΠ°Π΅ΠΌΡΠΌ # **: ΠΡΡΡΡΠΏΡ β Python ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ ΠΎΡΡΡΡΠΏΡ Ρ ΠΏΡΠΎΠ±Π΅Π»Π°ΠΌΠΈ, Π° Π½Π΅ # **: ΠΠΏΠ΅ΡΠ°ΡΠΎΡΡ ΠΈ ΠΏΠΎΡΠΎΠΊ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ β ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΡ Python Π²ΠΊΠ»ΡΡΠ°ΡΡ (ΡΡΠ΅Π΄ΠΈ ΠΏΡΠΎΡΠ΅Π³ΠΎ) # **: ΠΡΡΠ°ΠΆΠ΅Π½ΠΈΡ β Π½Π΅ΠΊΠΎΡΠΎΡΡΠ΅ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΡ Python ΠΏΠΎΡ ΠΎΠΆΠΈ Π½Π° lΠΠ°ΠΊ ΠΏΠΎΠ»ΡΡΠΈΡΡ ΡΡΡΠ°Π½ΠΈΡΡ Π½Π° Π΄ΡΡΠ³ΠΈΡ ΡΠ·ΡΠΊΠ°Ρ
ΠΡΠ»ΠΈ Π²Ρ Ρ ΠΎΡΠΈΡΠ΅ ΠΏΠΎΠ»ΡΡΠΈΡΡ Π΄ΡΡΠ³ΠΈΠ΅ ΠΏΠ΅ΡΠ΅Π²ΠΎΠ΄Ρ Π΄Π°Π½Π½ΠΎΠΉ ΡΡΡΠ°Π½ΠΈΡΡ, Π²Ρ Π΄ΠΎΠ»ΠΆΠ½Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΠ²ΠΎΠΉΡΡΠ²ΠΎ
langlinks.
ΠΡΠΎ ΠΊΠ°ΡΡΠ°,
Π³Π΄Π΅ ΠΊΠ»ΡΡ β ΡΡΠΎ ΠΊΠΎΠ΄ ΡΠ·ΡΠΊΠ°, Π° Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ β WikipediaPage.ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ print_langlinks(ΡΡΡΠ°Π½ΠΈΡΠ°): langlinks = ΡΡΡΠ°Π½ΠΈΡΠ°.langlinks Π΄Π»Ρ k Π² ΠΎΡΡΠΎΡΡΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠΌ (langlinks.keys()): v = Π»Π΅Π½Π³Π»ΠΈΠ½ΠΊΠΈ[k] print("%s: %s - %s: %s" % (k, v.language, v.title, v.fullurl)) print_langlinks(page_py) # af: af - Python (ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΠΎΠ΅ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½ΠΈΠ΅): https://af.wikipedia.org/wiki/Python_(ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΠΎΠ΅ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½ΠΈΠ΅) # als: als β Python (Programmiersprache): https://als.wikipedia.org/wiki/Python_(Programmiersprache) # an: an - Python: https://an.wikipedia.org/wiki/Python # Π°Ρ: Π°Ρ - Ψ¨Ψ§ΩΨ«ΩΩ: https://ar.wikipedia.org/wiki/%D8%A8%D8%A7%D9%8A%D8%AB%D9%88%D9%86 # as: as - ΰ¦ͺΰ¦Ύΰ¦ΰ¦₯ন: https://as.wikipedia.org/wiki/%E0%A6%AA%E0%A6%BE%E0%A6%87%E0%A6%A5%E0%A6%A8 page_py_cs = page_py.langlinks['cs'] print("Π‘ΡΡΠ°Π½ΠΈΡΠ° - Π‘Π²ΠΎΠ΄ΠΊΠ°: %s" % page_py_cs.summary[0:60]) # Page - Summary: Python (englickΓ‘ vΓ½slovnost [ΛpaiΞΈtΙn]) je vysokoΓΊrovΕovΓ½ skΠΠ°ΠΊ ΠΏΠΎΠ»ΡΡΠΈΡΡ ΡΡΡΠ»ΠΊΠΈ Π½Π° Π΄ΡΡΠ³ΠΈΠ΅ ΡΡΡΠ°Π½ΠΈΡΡ
ΠΡΠ»ΠΈ Π²Ρ Ρ ΠΎΡΠΈΡΠ΅ ΠΏΠΎΠ»ΡΡΠΈΡΡ Π²ΡΠ΅ ΡΡΡΠ»ΠΊΠΈ Π½Π° Π΄ΡΡΠ³ΠΈΠ΅ Π²ΠΈΠΊΠΈ-ΡΡΡΠ°Π½ΠΈΡΡ Ρ Π΄Π°Π½Π½ΠΎΠΉ ΡΡΡΠ°Π½ΠΈΡΡ, Π²Π°ΠΌ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΠ²ΠΎΠΉΡΡΠ²ΠΎ
links.
ΠΡΠΎ ΠΊΠ°ΡΡΠ°, Π³Π΄Π΅ ΠΊΠ»ΡΡ β Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ ΡΡΡΠ°Π½ΠΈΡΡ, Π° Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ β 9.0395 Π‘ΡΡΠ°Π½ΠΈΡΠ° ΠΠΈΠΊΠΈΠΏΠ΅Π΄ΠΈΠΈ .ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ print_links(ΡΡΡΠ°Π½ΠΈΡΠ°): ΡΡΡΠ»ΠΊΠΈ = ΡΡΡΠ°Π½ΠΈΡΠ°.ΡΡΡΠ»ΠΊΠΈ Π΄Π»Ρ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠ° Π² sorted(links.keys()): print("%s: %s" % (Π½Π°Π·Π²Π°Π½ΠΈΠ΅, ΡΡΡΠ»ΠΊΠΈ[Π½Π°Π·Π²Π°Π½ΠΈΠ΅])) print_links(page_py) # 3ds Max: 3ds Max (id: ??, ns: 0) # ?:: ?: (id: ??, ns: 0) # ABC (ΡΠ·ΡΠΊ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ): ABC (ΡΠ·ΡΠΊ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ) (id: ??, ns: 0) # ΠΠΠΠΠ 68: ΠΠΠΠΠ 68 (id: ??, ns: 0) # Abaqus: Abaqus (id: ??, ns: 0) # ...ΠΠ°ΠΊ ΠΏΠΎΠ»ΡΡΠΈΡΡ ΠΊΠ°ΡΠ΅Π³ΠΎΡΠΈΠΈ ΡΡΡΠ°Π½ΠΈΡ
ΠΡΠ»ΠΈ Π²Ρ Ρ ΠΎΡΠΈΡΠ΅ ΠΏΠΎΠ»ΡΡΠΈΡΡ Π²ΡΠ΅ ΠΊΠ°ΡΠ΅Π³ΠΎΡΠΈΠΈ, ΠΊ ΠΊΠΎΡΠΎΡΡΠΌ ΠΎΡΠ½ΠΎΡΠΈΡΡΡ ΡΡΡΠ°Π½ΠΈΡΠ°, Π²Ρ Π΄ΠΎΠ»ΠΆΠ½Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΠ²ΠΎΠΉΡΡΠ²ΠΎ
ΠΊΠ°ΡΠ΅Π³ΠΎΡΠΈΠΈ. ΠΡΠΎ ΠΊΠ°ΡΡΠ°, Π³Π΄Π΅ ΠΊΠ»ΡΡ β Π½Π°Π·Π²Π°Π½ΠΈΠ΅ ΠΊΠ°ΡΠ΅Π³ΠΎΡΠΈΠΈ, Π° Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ βWikipediaPage.ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ print_categories(ΡΡΡΠ°Π½ΠΈΡΠ°): ΠΊΠ°ΡΠ΅Π³ΠΎΡΠΈΠΈ = ΡΡΡΠ°Π½ΠΈΡΠ°.ΠΊΠ°ΡΠ΅Π³ΠΎΡΠΈΠΈ Π΄Π»Ρ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠ° Π² ΠΎΡΡΠΎΡΡΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠΌ (categories.keys()): print("%s: %s" % (Π½Π°Π·Π²Π°Π½ΠΈΠ΅, ΠΊΠ°ΡΠ΅Π³ΠΎΡΠΈΠΈ[Π½Π°Π·Π²Π°Π½ΠΈΠ΅])) ΡΠ°ΡΠΏΠ΅ΡΠ°ΡΠ°ΡΡ("ΠΠ°ΡΠ΅Π³ΠΎΡΠΈΠΈ") print_categories(page_py) # ΠΠ°ΡΠ΅Π³ΠΎΡΠΈΡ:ΠΡΠ΅ ΡΡΠ°ΡΡΠΈ, ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΠΈΠ΅ ΠΏΠΎΡΠ΅Π½ΡΠΈΠ°Π»ΡΠ½ΠΎ Π΄Π°ΡΠΈΡΠΎΠ²Π°Π½Π½ΡΠ΅ ΡΡΠ²Π΅ΡΠΆΠ΄Π΅Π½ΠΈΡ: .
..
# ΠΠ°ΡΠ΅Π³ΠΎΡΠΈΡ: ΠΡΠ΅ ΡΡΠ°ΡΡΠΈ Ρ Π·Π°ΡΠ²Π»Π΅Π½ΠΈΡΠΌΠΈ Π±Π΅Π· ΠΈΡΡΠΎΡΠ½ΠΈΠΊΠΎΠ²: ...
# ΠΠ°ΡΠ΅Π³ΠΎΡΠΈΡ:Π‘ΡΠ°ΡΡΠΈ, ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΠΈΠ΅ ΠΏΠΎΡΠ΅Π½ΡΠΈΠ°Π»ΡΠ½ΠΎ Π΄Π°ΡΠΈΡΠΎΠ²Π°Π½Π½ΡΠ΅ Π·Π°ΡΠ²Π»Π΅Π½ΠΈΡ ΠΎΡ Π°Π²Π³ΡΡΡΠ° 2016 Π³ΠΎΠ΄Π°: ...
# ΠΠ°ΡΠ΅Π³ΠΎΡΠΈΡ:Π‘ΡΠ°ΡΡΠΈ, ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΠΈΠ΅ Π·Π°ΡΠ²Π»Π΅Π½ΠΈΡ, ΠΏΠΎΡΠ΅Π½ΡΠΈΠ°Π»ΡΠ½ΠΎ Π΄Π°ΡΠΈΡΠΎΠ²Π°Π½Π½ΡΠ΅ ΠΌΠ°ΡΡΠΎΠΌ 2017Β Π³ΠΎΠ΄Π°: ...
# ΠΠ°ΡΠ΅Π³ΠΎΡΠΈΡ:Π‘ΡΠ°ΡΡΠΈ, ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΠΈΠ΅ Π·Π°ΡΠ²Π»Π΅Π½ΠΈΡ, ΠΏΠΎΡΠ΅Π½ΡΠΈΠ°Π»ΡΠ½ΠΎ Π΄Π°ΡΠΈΡΠΎΠ²Π°Π½Π½ΡΠ΅ ΡΠ΅Π½ΡΡΠ±ΡΠ΅ΠΌ 2017 Π³ΠΎΠ΄Π°: ...
ΠΠ°ΠΊ ΠΏΠΎΠ»ΡΡΠΈΡΡ Π²ΡΠ΅ ΡΡΡΠ°Π½ΠΈΡΡ ΠΈΠ· ΠΊΠ°ΡΠ΅Π³ΠΎΡΠΈΠΈ
Π§ΡΠΎΠ±Ρ ΠΏΠΎΠ»ΡΡΠΈΡΡ Π²ΡΠ΅ ΡΡΡΠ°Π½ΠΈΡΡ ΠΈΠ· Π΄Π°Π½Π½ΠΎΠΉ ΠΊΠ°ΡΠ΅Π³ΠΎΡΠΈΠΈ, Π²Ρ Π΄ΠΎΠ»ΠΆΠ½Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΠ²ΠΎΠΉΡΡΠ²ΠΎ
categorymembers. ΠΠ½ Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ Π²ΡΠ΅Ρ ΡΠ»Π΅Π½ΠΎΠ² Π΄Π°Π½Π½ΠΎΠΉ ΠΊΠ°ΡΠ΅Π³ΠΎΡΠΈΠΈ. ΠΡ Π΄ΠΎΠ»ΠΆΠ½Ρ ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²Π°ΡΡ ΡΠ΅ΠΊΡΡΡΠΈΡ ΠΈ Π΄Π΅Π΄ΡΠΏΠ»ΠΈΠΊΠ°ΡΠΈΡ ΡΠ°ΠΌΠΎΡΡΠΎΡΡΠ΅Π»ΡΠ½ΠΎ.def print_categorymembers(categorymembers, level=0, max_level=1): Π΄Π»Ρ c Π² categorymembers.values(): print("%s: %s (ns: %d)" % ("*" * (level + 1), c.title, c.ns)) Π΅ΡΠ»ΠΈ c.ns == wikipediaapi.Namespace.CATEGORY ΠΈ ΡΡΠΎΠ²Π΅Π½Ρ < max_level: print_categorymembers(c.categorymembers, level=level + 1, max_level=max_level) cat = wiki_wiki.
page("ΠΠ°ΡΠ΅Π³ΠΎΡΠΈΡ:Π€ΠΈΠ·ΠΈΠΊΠ°")
print("Π§Π»Π΅Π½Ρ ΠΊΠ°ΡΠ΅Π³ΠΎΡΠΈΠΈ: ΠΠ°ΡΠ΅Π³ΠΎΡΠΈΡ:Π€ΠΈΠ·ΠΈΠΊΠ°")
print_categorymembers(cat.categorymembers)
# Π§Π»Π΅Π½Ρ ΠΊΠ°ΡΠ΅Π³ΠΎΡΠΈΠΈ: ΠΠ°ΡΠ΅Π³ΠΎΡΠΈΡ:Π€ΠΈΠ·ΠΈΠΊΠ°
# * Π‘ΡΠ°ΡΠΈΡΡΠΈΡΠ΅ΡΠΊΠ°Ρ ΠΌΠ΅Ρ
Π°Π½ΠΈΠΊΠ° (ns:0)
# * ΠΠ°ΡΠ΅Π³ΠΎΡΠΈΡ:Π€ΠΈΠ·ΠΈΡΠ΅ΡΠΊΠΈΠ΅ Π²Π΅Π»ΠΈΡΠΈΠ½Ρ (ns: 14)
# ** ΠΠΎΠΊΠ°Π·Π°ΡΠ΅Π»Ρ ΠΏΡΠ΅Π»ΠΎΠΌΠ»Π΅Π½ΠΈΡ (Π½Ρ: 0)
# ** ΠΠ°ΡΠ΅ΡΡΠ²ΠΎ ΠΏΠ°ΡΠ° (ns: 0)
# ** ΠΠ»Π΅ΠΊΡΡΠΈΡΠ΅ΡΠΊΠ°Ρ Π²ΠΎΡΠΏΡΠΈΠΈΠΌΡΠΈΠ²ΠΎΡΡΡ (ns: 0)
# ** Π£Π΄Π΅Π»ΡΠ½ΡΠΉ Π²Π΅Ρ (ns: 0)
# ** ΠΠ°ΡΠ΅Π³ΠΎΡΠΈΡ: ΠΡΠ·ΠΊΠΎΡΡΡ (ns: 14)
# *** ΠΡΡΠΊΡΠΈΠ»Π΄ ΠΠ½ΠΆΠΈΠ½ΠΈΡΠΈΠ½Π³ (ns: 0)
ΠΠ°ΠΊ ΡΠ²ΠΈΠ΄Π΅ΡΡ Π±Π°Π·ΠΎΠ²ΡΠΉ Π²ΡΠ·ΠΎΠ² API
ΠΡΠ»ΠΈ Ρ Π²Π°Ρ Π²ΠΎΠ·Π½ΠΈΠΊΠ»ΠΈ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ Ρ ΠΏΠΎΠ»ΡΡΠ΅Π½ΠΈΠ΅ΠΌ Π΄Π°Π½Π½ΡΡ , Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΏΠΎΠ»ΡΡΠΈΡΡ URL-Π°Π΄ΡΠ΅Ρ Π±Π°Π·ΠΎΠ²ΠΎΠ³ΠΎ Π²ΡΠ·ΠΎΠ²Π° API. ΠΡΠΎ ΠΏΠΎΠΌΠΎΠΆΠ΅Ρ Π²Π°ΠΌ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΠΈΡΡ, Π½Π°Ρ ΠΎΠ΄ΠΈΡΡΡ Π»ΠΈ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠ° Π² Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ΅ ΠΈΠ»ΠΈ Π³Π΄Π΅-ΡΠΎ Π΅ΡΠ΅.
ΠΈΠΌΠΏΠΎΡΡ Π²ΠΈΠΊΠΈΠΏΠ΅Π΄ΠΈΠΈΠ°ΠΏΠΈ ΠΈΠΌΠΏΠΎΡΡ ΡΠΈΡΡΠ΅ΠΌΡ wikipediaapi.log.setLevel(level=wikipediaapi.logging.DEBUG) # Π£ΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ ΠΎΠ±ΡΠ°Π±ΠΎΡΡΠΈΠΊ, Π΅ΡΠ»ΠΈ Π²Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΠ΅ Python Π² ΠΈΠ½ΡΠ΅ΡΠ°ΠΊΡΠΈΠ²Π½ΠΎΠΌ ΡΠ΅ΠΆΠΈΠΌΠ΅ out_hdlr = wikipediaapi.logging.StreamHandler(sys.stderr) out_hdlr.setFormatter(wikipediaapi.logging.Formatter('%(asctime)s %(ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅)s')) out_hdlr.setLevel(wikipediaapi.

lower()
r = [c for c in r if c in alphabet]
return ''.join(r)
alphabet = ' 1234567890-ΠΉΡΡΠΊΠ΅Π½Π³ΡΡΠ·Ρ
ΡΡΡΠ²Π°ΠΏΡΠΎΠ»Π΄ΠΆΡΡΡΡΠΌΠΈΡΡΠ±ΡΡqwertyuiopasdfghjklzxcvbnm?%.,()!:;'
TeleBot('ΠΠ°Ρ ΠΊΠ»ΡΡ ΠΎΡ BotFather')
wikipedia.set_lang("ru")
def clean_str(r):
r = r.lower()
r = [c for c in r if c in alphabet]
return ''.join(r)
alphabet = ' 1234567890-ΠΉΡΡΠΊΠ΅Π½Π³ΡΡΠ·Ρ
ΡΡΡΠ²Π°ΠΏΡΠΎΠ»Π΄ΠΆΡΡΡΡΠΌΠΈΡΡΠ±ΡΡqwertyuiopasdfghjklzxcvbnm?%.,()!:;'
def update():
with open('dialogues.txt', encoding='utf-8') as f:
content = f.read()
blocks = content.split('\n')
dataset = []
for block in blocks:
replicas = block.split('\\')[:2]
if len(replicas) == 2:
pair = [clean_str(replicas[0]), clean_str(replicas[1])]
if pair[0] and pair[1]:
dataset.append(pair)
X_text = []
y = []
for question, answer in dataset[:10000]:
X_text.append(question)
y += [answer]
global vectorizer
vectorizer = CountVectorizer()
X = vectorizer.fit_transform(X_text)
global clf
clf = LogisticRegression()
clf.fit(X, y)
update()
def get_generative_replica(text):
text_vector = vectorizer.transform([text]).toarray()[0]
question = clf.predict([text_vector])[0]
return question
def getwiki(s):
try:
ny = wikipedia.
\{\}]*\}', '', wikitext2)
return wikitext2
except Exception as e:
return 'Π ΡΠ½ΡΠΈΠΊΠ»ΠΎΠΏΠ΅Π΄ΠΈΠΈ Π½Π΅Ρ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ ΠΎΠ± ΡΡΠΎΠΌ'
@bot.message_handler(commands=['start'])
def start_message(message):
bot.send_message(message.chat.id,"ΠΠ΄ΡΠ°Π²ΡΡΠ²ΡΠΉΡΠ΅, Π‘ΡΡ.")
question = ""
@bot.message_handler(content_types=['text'])
def get_text_messages(message):
command = message.text.lower()
if command =="Π½Π΅ ΡΠ°ΠΊ":
bot.send_message(message.from_user.id, "Π° ΠΊΠ°ΠΊ?")
bot.register_next_step_handler(message, wrong)
else:
global question
question = command
reply = get_generative_replica(command)
if reply=="Π²ΠΈΠΊΠΈ ":
bot.send_message(message.from_user.id, getwiki(command))
else:
bot.send_message(message.from_user.id, reply)
def wrong(message):
a = f"{question}\{message.text.lower()} \n"
with open('dialogues.txt', "a", encoding='utf-8') as f:
f.write(a)
bot.send_message(message.from_user.id, "ΠΠΎΡΠΎΠ²ΠΎ")
update()
bot.polling(none_stop=True)