ΠŸΠΈΡ‚ΠΎΠ½ википСдия: Python β€” Π’ΠΈΠΊΠΈΡƒΡ‡Π΅Π±Π½ΠΈΠΊ

Π‘ΠΎΠ΄Π΅Ρ€ΠΆΠ°Π½ΠΈΠ΅

Π‘Π°ΠΌΠΎΠΎΠ±ΡƒΡ‡Π°Π΅ΠΌΡ‹ΠΉ Ρ‡Π°Ρ‚-Π±ΠΎΡ‚ 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.

ΠŸΡ€ΠΈΠΌΠ΅Ρ‡Π°Π½ΠΈΡ

  1. ↑ Π‘ΠΎΠ»ΡŒΡˆΠ°Ρ совСтская энциклопСдия, 3 ΠΈΠ·Π΄., И. Π‘. ДарСвский.

Wikimedia Foundation. 2010.

ПомоТСм Π½Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ Ρ€Π΅Ρ„Π΅Ρ€Π°Ρ‚

Π‘ΠΈΠ½ΠΎΠ½ΠΈΠΌΡ‹:

змСя, ΡƒΠ΄Π°Π²

  • ΠŸΠΈΡ‚ΠΎΠΌΠ½ΠΈΠΊ
  • ΠŸΠΈΡ‚ΠΎΠ½ (змСя)

ПолСзноС


PythonImplementations β€” Python Wiki

Π‘ΠΎΠ΄Π΅Ρ€ΠΆΠ°Π½ΠΈΠ΅

  1. Π Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ Python
    1. Π’Π°Ρ€ΠΈΠ°Π½Ρ‚Ρ‹ CPython
      1. Π‘ΠΎΠΊΡ€Π°Ρ‰Π΅Π½Π½Ρ‹Π΅ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚Ρ‹ Python
    2. Π”Ρ€ΡƒΠ³ΠΈΠ΅ Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ
      1. Π Π°Π±ΠΎΡ‡ΠΈΠ΅ Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ
      2. ΠŸΡ€Π΅Π΄Π²Π°Ρ€ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ
    3. Π Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΡ
    4. ΠšΠΎΠΌΠΏΠΈΠ»ΡΡ‚ΠΎΡ€Ρ‹
    5. ЧисловыС ускоритСли
    6. ΠŸΠΎΡ…ΠΎΠΆΠΈΠ΅, Π½ΠΎ Ρ€Π°Π·Π½Ρ‹Π΅ языки
    7. Руководства ΠΏΠΎ Ρ‚Π΅ΠΌΠ°ΠΌ
    8. (ВСсСло) ΠŸΡ€Π΅ΠΏΡ€ΠΎΡ†Π΅ΡΡΠΎΡ€Ρ‹ Python
    9. Academic Projects

Под Β«Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠ΅ΠΉΒ» 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.
ΠžΡΡ‚Π°Π²ΠΈΡ‚ΡŒ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ

Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ

Π’Π°Ρˆ адрСс email Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΠΏΡƒΠ±Π»ΠΈΠΊΠΎΠ²Π°Π½. ΠžΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ поля ΠΏΠΎΠΌΠ΅Ρ‡Π΅Π½Ρ‹ *