![]() |
![]() |
|
NiziBrez? Brez!1. podnalogaNapišite
funkcijo Uradna rešitevdef brez(niz): """sestavi nov niz, pri katerem spustimo prvi in zadnji znak niza""" nov_niz = '' ind = 1 while ind < len(niz) - 1: # spustimo prvega in zadnjega nov_niz += niz[ind] ind += 1 return nov_niz # Še ena možnost def brez(niz): """vrne niz brez prvega in zadnjega znaka""" return niz[1:-1] 2. podnalogaNapišite
funkcijo
Uradna rešitevdef brez_stevk(niz): """sestavi nov niz, pri katerem spustimo števke""" nov_niz = '' ind = 0 while ind < len(niz): nek_znak = niz[ind] if not ('0' <= nek_znak <= '9'): # v nek_znak ni števke nov_niz += nek_znak # dodamo k novemu nizu ind += 1 return nov_niz 3. podnalogaNapišite
funkcijo
Uradna rešitevdef brez_sredine(niz): """V nizu spusti srednji znak če pa srednjega znaka ni, niz ohrani """ dol_niza = len(niz) if dol_niza % 2 == 0: # niz je sode dolžine return niz # niz je lihe dolžine nov_niz = '' ind = 0 # prepišemo prvo polovico while ind < dol_niza // 2: nek_znak = niz[ind] nov_niz += nek_znak # dodamo k novemu nizu ind += 1 # in še drugo ind += 1 while ind < dol_niza: nek_znak = niz[ind] nov_niz += nek_znak # dodamo k novemu nizu ind += 1 return nov_niz #ali pa tako def brez_sredine(niz): """V nizu spusti srednji znak če pa srednjega znaka ni, niz ohrani """ dolzina = len(niz) if dolzina % 2 == 0: return niz else: sredina = dolzina // 2 nov_niz = niz[:sredina] + niz[sredina+1:] return nov_niz ČrkojedkaNekoč je živela ptica Črkojedka, ki je imela še posebej rada samoglasnike.
Še posebej od takrat, ko se je naučila, da v Pythonu lahko preverimo,
ali je nek znak samoglasnik s pomočjo operatorja
Kadar je pojedla samoglasnik, je na tistem mestu pustila 1. podnalogaSestavite funkcijo
Uradna rešitevdef crkojedka(niz): """ funkcija v dani besedi samoglasnike zamenja z *""" samoglasniki ='aeiouAEIOU' nov_niz='' i = 0 while i < len(niz): znak = niz[i] if znak in samoglasniki: # pogleda ali je posamezen znak v nizu samoglasnik # in če je, potem ga nadomesti z * nov_niz += '*' else: # sicer ga le prepiše nov_niz += znak i += 1 return nov_niz 2. podnalogaDoločene besede so bile bolj kalorične (vsebovale več samoglasnikov), določene manj.
Ker je Črkojedka na dieti, ji sestavite funkcijo, ki ji bo pomagala izbirati
ustrezno hrano. Funkcija
Uradna rešitevdef crkojedka_hujsa(niz): ''' funkcija prešteje samoglasnike *''' samoglasniki ='aeiouAEIOU' kaloricna_vrednost = 0 i = 0 while i < len(niz): znak = niz[i] if znak in samoglasniki: # pogleda ali je posamezen znak v nizu samoglasnik kaloricna_vrednost += 1 i += 1 return kaloricna_vrednost 3. podnalogaPo neki precej "živahni" zabavi se je Črkojedka odmajala domov. Zjutraj se je
zbudila s hudim ... (hm, verjetno ne mačkom, kaj menite?). In opazila je,
da so se sedaj njene prehrambene navade spremenile. Sedaj ni več samoglasnikov
nadomeščala z *, ampak z ničemer več. Poleg tega pa se je vrstni red preostalih
znakov obrnil!
Sestavite funkcijo
Uradna rešitevdef crkojedka_ne_pij(niz): """ funkcija v dani besedi izloči samoglasnike in obrne vrstni red znakov""" samoglasniki ='aeiouAEIOU' nov_niz='' i = 0 while i < len(niz): znak = niz[i] if not znak in samoglasniki: # če znak ni samoglasnik nov_niz = znak + nov_niz # ga doda na konec i += 1 return nov_niz Naloga 1 (stran 97)http://lusy.fri.uni-lj.si/ucbenik/book/1206/index8.html 1. podnalogaNaslednja funkcija dobi kot parameter niz
Uradna rešitevdef pobrisi_oklepaje(s): """Iz niza odstrani oklepaje (in tisto, kar je vmes)""" v_oklepaju = False niz_brez_ok = "" # izhodni niz for znak in s: if znak == "(": v_oklepaju = True elif znak == ")": v_oklepaju = False elif not v_oklepaju: niz_brez_ok += znak # če pa smo v oklepaju, znak spustimo! return niz_brez_ok 2. podnalogaKaj se zgodi, če tej funkciji damo niz z ugnezdenimi oklepaji,
na primer Uradna rešitevdef pobrisi_gnezdene_oklepaje(s): '''Iz niza odstrani oklepaje (in tisto, kar je vmes) in dela tudi z gnezdenimi oklepaji ''' v_oklepaju = 0 # štejemo, kako "globoko" smo t = "" # izhodni niz for c in s: if c == "(": v_oklepaju += 1 # eno globlje elif c == ")": v_oklepaju -= 1 # ven iz enega gnezdenja elif v_oklepaju == 0: # če smo povsem ven t += c # še vedno smo znotraj oklepajev return t Velike in male1. podnalogaTeta Helga je pisala pismo svojemu prijatelju Hansu. Teta Helga je tako zelo spretna z računalniki, da lahko tipka pismo, ne da bi spremljala na ekranu kaj se dogaja. Ko je vsa zadovoljna napisala pismo, jo je zadel šok ko ga je pogledala. Nevede je imela ves čas pritisnjeno tipko caps lock in so se vse velike in male črke ravno zamenjale. Pomagajte teti Helgi in sestavite funkcijo
Uradna rešitevdef obrni(niz): """Sprejme niz in vrne nov niz, v katerem so velike črke zamenjane z malimi in obratno""" nov_niz = '' for znak in niz: if znak.islower(): znak = znak.upper() else: znak = znak.lower() nov_niz += znak return nov_nizMesto objave ob koncu projekta 15.9.2018 |