Ero sivun ”Python 2/Moduuli” versioiden välillä

Poistettu sisältö Lisätty sisältö
TeemuN (keskustelu | muokkaukset)
Ei muokkausyhteenvetoa
Uudelleenohjaus sivulle Compact Flash
Rivi 1:
#REDIRECT [[Compact Flash]]
'''1. haetaan'''
<pre>
import math
</pre>
 
'''2. käytetään'''
<pre>
print math.sqrt(10) # 3.16227766017
</pre>
 
Tässä haettiin math-moduuli import-komennolla. Math-moduuli on tavallinen Python-tiedosto, jossa on luokka nimeltä sqrt, johon luku 10 lähetetään ja josta luku palautuu käsiteltynä. Omia moduuleja voi tehdä ja niillä ohjelma jakautuu useisiin tiedostoihin, ''ohjelmistoksi''. Pythonin peruskirjasto on laaja ja sisältää moduuleja perushommiin.
 
Moduulissa täytyy olla funktio. Seuraavassa esimerkissä käytetään luokkaa ja __init__-konstruktoria, jotta moduulia on helppo laajentaa.
 
==Oma moduuli==
custom_module.py
<pre>
class Module:
def __init__(self):
pass # passataan
 
def change(self, string):
string = string.replace('Hello', 'Good morning')
return string
</pre>
Muuttaa merkkijonon "Hello, world" muotoon "Good morning, world!".
 
===Kutsutaan pääohjelmassa===
'''1. haetaan'''
<pre>
import custom_module # Muista välin tilalle alaviiva!
</pre>
 
'''2. kutsutaan'''
 
'''2.1'''
<pre>
print custom_module.Module().change('Hello, world!') # moduulin_nimi.Luokka().funktio()
</pre>
 
'''2.2'''
<pre>
Replacer = custom_module.Module() # moduulin_nimi.Luokka()
print Replacer.change('Hello, world!') # ylla_oleva.funktio()
</pre>
 
print-komento on näissä, koska change-funktion palauttama merkkijono halutaan tulostaa.
 
==Muita tapoja hakea moduuli==
<pre>
import math as MATH # vaihdetaan nimeä
from math import sqrt # haetaan yksi luokka
from math import * # haetaan kaikki luokat
from math import sin as SIN # muutetaan luokan nimeä
</pre>
 
[[Luokka:Python]]