3 Txoj Hauv Kev Sau Tus Neeg rau zaub mov nrog Python

Cov txheej txheem:

3 Txoj Hauv Kev Sau Tus Neeg rau zaub mov nrog Python
3 Txoj Hauv Kev Sau Tus Neeg rau zaub mov nrog Python

Video: 3 Txoj Hauv Kev Sau Tus Neeg rau zaub mov nrog Python

Video: 3 Txoj Hauv Kev Sau Tus Neeg rau zaub mov nrog Python
Video: Koj Dag Kuv Tuag | Tsom Xyooj | Official Video 2014 2024, Lub peb hlis ntuj
Anonim

Tsim tus neeg rau zaub mov los ntawm kos yog txoj haujlwm loj. Txawm li cas los xij ua li ntawd tuaj yeem txhim kho koj cov txuj ci ua haujlwm tau zoo thiab tuaj yeem tso cai rau koj hloov kho nws raws li koj xav tau. Cov ntawv qhia no yuav siv cov nab hab sej thiab qib qis qhov programing los tsim cov server kom cov neeg siv khoom tuaj yeem sib tham sib tham. Qhov no tseem yuav tsuas yog npog cov txheej txheem ntawm lub qhov rais. Qee cov ntaub ntawv yuav muab rau hauv cov lus qhia, tab sis yog tias koj tsuas xav tau cov cai, nws tau muab hauv cov duab. (Nco tseg: cov lus qhia nthuav tawm ntawm no tsuas yog cov hauv paus).

Cov kauj ruam

Txoj Kev 1 ntawm 3: Txhim Kho Python

Sau Tus Neeg rau zaub mov nrog Python Kauj Ruam 1
Sau Tus Neeg rau zaub mov nrog Python Kauj Ruam 1

Kauj Ruam 1. Rub tawm Python

Mus rau nab nab lub vev xaib tseem ceeb thiab rub Python 2.7.10. Tom qab nws rub tawm khiav los ntawm cov kauj ruam ntawm cov nab hab sej installer nrog cov chaw teeb tsa. Qhov txuas no tau muab ntawm no

Sau Tus Neeg rau zaub mov nrog Python Kauj Ruam 2
Sau Tus Neeg rau zaub mov nrog Python Kauj Ruam 2

Kauj Ruam 2. Khiav IDLE (Python GUI)

Mus rau hauv Python 2.7 nplaub tshev thiab khiav IDLE (Python GUI), nab hab sej yuav tsum tam sim no nyob hauv koj cov ntawv qhia zaub mov qhov chaw uas IDLE nyob.

Sau Tus Neeg rau zaub mov nrog Python Kauj Ruam 3
Sau Tus Neeg rau zaub mov nrog Python Kauj Ruam 3

Kauj Ruam 3. Tsim cov ntawv tshiab

Mus rau Cov Ntaub Ntawv nyob rau sab saum toj sab laug ntawm lub qhov rais qhib tshiab thiab xaiv Cov Ntawv Tshiab, koj yuav tsum muaj lub qhov rai qhib qhib nrog lub npe Tsis Muaj Npe.

Txoj Kev 2 ntawm 3: Tsim Tus Server

Sau Tus Neeg rau zaub mov nrog Python Kauj Ruam 4
Sau Tus Neeg rau zaub mov nrog Python Kauj Ruam 4

Kauj Ruam 1. Ntshuam cov qauv tsim

Ob qhov qauv xav tau rau cov cai no yog "qhov (socket)" thiab "xov". Qhov no tuaj yeem ua tiav los ntawm kev ntaus thawj kab "los ntawm ntsaws ntsaws *" thiab ntawm kab tom ntej "ntshuam xov".

Sau Tus Neeg rau zaub mov nrog Python Kauj Ruam 5
Sau Tus Neeg rau zaub mov nrog Python Kauj Ruam 5

Kauj Ruam 2. Tsim xov tshiab

Qhov no yuav ua haujlwm sib piv 2 cov neeg siv khoom sib koom ua ke. Cov xov yog cov txheej txheem uas tuaj yeem ua haujlwm thaum qhov haujlwm tseem ceeb khiav. Ntaus raws nraim li daim duab qhia li cas. Qhov no yuav teeb tsa qhov sib txawv hauv xov kom lawv tuaj yeem hu ua tom qab.

Sau Tus Neeg rau zaub mov nrog Python Kauj Ruam 6
Sau Tus Neeg rau zaub mov nrog Python Kauj Ruam 6

Kauj Ruam 3. Tsim cov txheej txheem xov

Rau cov neeg siv los sib txuas lus ncaj qha koj yuav tsum xa mus rau ib leeg ib leeg cov ntaub ntawv, uas suav nrog lawv tus IP chaw nyob thiab chaw nres nkoj twg lawv siv. Txhawm rau ua qhov no koj yuav tsum tsim lub qhov (socket) uas tuaj yeem ua tiav nrog "variableName = socket (AF_NET, SOCK_DGRAM)". Qhov no yuav tsim lub qhov (socket) uas siv UDP raws tu qauv. Tom ntej khi lub qhov (socket) rau koj tus IP chaw nyob nrog tus lej chaw nres nkoj nrog "roomSocket.bind (('', tus kheej.port))" Qhov chaw seem sawv cev rau koj tus kheej lub IP chaw nyob hauv koj cheeb tsam network thiab tus kheej.port muab rau tus lej chaw nres nkoj uas suav nrog thaum koj hu xov tooj no. Qhov kawg koj yuav tsum ua nrog lub qhov (socket) no yog xa cov ntaub ntawv los ntawm nws. Txij li qhov no yog UDP lub qhov (socket) koj tsuas yog yuav tsum paub IP thiab chaw nres nkoj ntawm lub khoos phis tawj koj tab tom xa cov ntaub ntawv mus rau, cov syntax rau xa yog "socketName.sendto (IP, chaw nres nkoj)"

Sau Tus Neeg rau zaub mov nrog Python Kauj Ruam 7
Sau Tus Neeg rau zaub mov nrog Python Kauj Ruam 7

Kauj Ruam 4. Tsim kom muaj kev hloov pauv thoob ntiaj teb

Txog qib no koj yuav tsum tau txheeb xyuas ntau qhov sib txawv, uas suav nrog cov npe siv, tus lej chaw nres nkoj, suav cov neeg siv, cov neeg siv rau xov, thiab ID chav. Koj tseem yuav xav tsim lub qhov (socket) kom koj lub server tuaj yeem cuam tshuam nrog internet. Qhov no yog ua tiav los ntawm kev tsim lub qhov (socket) khoom tshiab thiab khi nws rau koj tus IP chaw nyob nrog tus lej chaw nres nkoj. (Tus lej chaw nres nkoj tuaj yeem yog txhua yam tab sis feem ntau nws yog qee yam kom tsis txhob muaj lwm txoj hauv kev siv nws lossis siv cov lej chaw nres nkoj tshwj tseg.)

Sau Tus Neeg rau zaub mov nrog Python Kauj Ruam 8
Sau Tus Neeg rau zaub mov nrog Python Kauj Ruam 8

Kauj Ruam 5. Tsim cov txheej txheem server tseem ceeb

Qhov no yuav ua rau tus neeg siv chaw nyob zoo li pib xov tsim ua ntej. Qhov no suav nrog tos kom tau txais cov ntaub ntawv los ntawm qhov tsis thiab tau txais tus neeg siv chaw nyob thiab khaws nws los siv hauv xov. Txoj hauv kev kom tau txais cov ntaub ntawv los ntawm koj lub qhov (socket) yog hu los ntawm "socketName.recvfrom (1024)", tus lej ntawm no tsuas yog tus lej bytes uas tau nyeem ib zaug. Hauv qhov piv txwv no peb khaws nws rau hauv qhov sib txawv hu ua userAddr, thiab ib zaug qhov no tshwm sim koj tuaj yeem txuag qhov chaw nyob no hauv cov npe uas tau tsim hauv kauj ruam 4. Yog tias nqe lus yuav tsim chav nyob yog ob tus neeg txuas thiab tsuas yog tsim chav thaum ob qhov sib txawv sib txawv tshwm sim.

Sau Tus Neeg rau zaub mov nrog Python Kauj Ruam 9
Sau Tus Neeg rau zaub mov nrog Python Kauj Ruam 9

Kauj Ruam 6. Txuag koj txoj haujlwm

Qhov no yuav tsum ua tiav hauv cov npe uas yooj yim mus rau kom nws tuaj yeem nkag mus tau yooj yim rau kev sim.

Txoj Kev 3 ntawm 3: Xeem

Sau Tus Neeg rau zaub mov nrog Python Kauj Ruam 10
Sau Tus Neeg rau zaub mov nrog Python Kauj Ruam 10

Kauj Ruam 1. Tsim cov neeg siv khoom sim

Nov yog tus neeg siv khoom yooj yim heev uas yuav tsuas yog tswj xyuas seb cov server puas tau xa lwm tus neeg siv cov ntaub ntawv rau tus neeg siv khoom tam sim no. Thov nco ntsoov tias tsis zoo li tus lej server, tus lej no xav tau lub npe server. Yog tias koj tab tom ua txhua yam no ntawm ib lub computer, lub npe server yuav tsum yog lub npe ntawm koj lub PC. Koj tuaj yeem paub koj lub npe computer los ntawm txoj nyem rau ntawm My Computer thiab mus rau cov khoom.

Sau Tus Neeg rau zaub mov nrog Python Kauj Ruam 11
Sau Tus Neeg rau zaub mov nrog Python Kauj Ruam 11

Kauj Ruam 2. Txuag koj txoj haujlwm

Qhov no yuav tsum yog nyob rau hauv cov npe tib yam li tus lej server.

Sau Tus Neeg rau zaub mov nrog Python Kauj Ruam 12
Sau Tus Neeg rau zaub mov nrog Python Kauj Ruam 12

Kauj Ruam 3. Qhib peb qhov hais kom ua qhov rai sib txawv

Mus rau lub tshuab raj pib thiab hauv kab ntawv tshawb fawb hom hauv “cmd” thiab ntaus nkag. Ua li no peb zaug. Lub qhov rais yuav tsum zoo li no.

Sau Tus Neeg rau zaub mov nrog Python Kauj Ruam 13
Sau Tus Neeg rau zaub mov nrog Python Kauj Ruam 13

Kauj Ruam 4. Khiav cov program

Koj yuav tau ntaus txoj hauv kev tseeb thaum siv lub qhov rai hais kom ua. Koj yuav tsum tau khiav cov cai server ua ntej ntawm ib lub qhov rai hais kom ua thiab tom qab ntawd sim cov ntawv thov tus lej ntawm lwm ob. Yog tias txhua yam ua tiav koj yuav tau txais qee yam cov lus hauv koj lub qhov rais.

Lus ceeb toom

  • Qhov haujlwm no tsuas yog ua haujlwm thaum khiav nws thiab sim cov neeg siv khoom ntawm tib lub network hauv cheeb tsam.
  • Nab hab sej 2.7.10 yog qhov qub thiab ze rau qhov kawg ntawm nws qhov kev txhawb nqa. Txhawm rau txuas ntxiv ua cov servers zoo, nws tau pom zoo tias qhov tseeb ntawm Python 3 tau teeb tsa hloov chaw.

Pom zoo: