Python - rozwiązanie zadanie z tutoriala.

Python - rozwiązanie zadanie z tutoriala.
SH
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 35
0

Czy ktoś mógłby rozwiązać dla mnie zadanie z tutoriala, podanego poniżej? Będę wdzięczny, nie za bardzo wiem jak to tam idzie.

Kopiuj

https://www.learnpython.org/pl/Funkcje
SH
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 35
0

chodzi mi dokładnie o to:

Kopiuj
Dodaj funkcję nazwaną lista_korzysci() - która zwraca tablicę następujących napisów: "Lepiej zorganizowany kod", "Wieksza czytelnosc kodu", "Latwiejsze wielokrotne uzycie kodu", "Mozliwosc dzielenia sie kodem i laczenia go w calosc przez rozne osoby"

Dodaj funkcję nazwaną buduj_zdanie(info), która otrzymuje pojedyńczy argument zawierający napis i zwracający zdanie zaczynające się podanym napisem i kończące się " jest zaleta funkcji!"

Wykonaj i zobacz jak funkcje ze sobą współpracują
lion137
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 5025
2

To łatwiutkie zadanie:

Kopiuj
#4programmers - python:
#https://www.learnpython.org/pl/Funkcje

def lista_korzyści():
    ret_list = ["Lepiej zorganizowany kod", "Wieksza czytelnosc kodu", "Latwiejsze wielokrotne uzycie kodu", "Mozliwosc dzielenia sie kodem i laczenia go w calosc przez rozne osoby"]
    return ret_list

print(lista_korzyści())

def buduj_zdanie(info):
    ret = info + " jest zaleta funkcji"
    return ret

print(buduj_zdanie(lista_korzyści()[1]))
#->['Lepiej zorganizowany kod', 'Wieksza czytelnosc kodu', 'Latwiejsze wielokrotne uzycie kodu', 'Mozliwosc dzielenia sie kodem i laczenia go w calosc przez rozne osoby']
#->Wieksza czytelnosc kodu jest zaleta funkcji

Jeśli Masz z nim problem to chyba Porzebujesz się troszkę cofnąć i przejrzeć materiał.

SH
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 35
0

Tam jakiś modek chyba prosił, więc wrzucam tutaj 'urywek' kodu, nie wiem nadal czemu moje return nazwa nie czyta odpowiednio jakby tablicy; nie działa.

def lista():
return nazwa = ["Lepiej", "Wieksza", "Latwiejsze", "Mozliwosc"]

def zbudujZdanie(info):
return = info + "jest zaleta!"

print(zbudujZdanie(lista()))

lion137
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 5025
1

Powoli, nie Czujesz roznicy miedzy statement, a expression w pythonie, Poczytaj na ten temat. Funkcja zwraca wartosc, czyli wartosc jakiegos expression, a statement nie ewaluuje (nie daje) zadnej wartosci. Statement, takie jak:
List_1 = [1, 2, 3]
Nic nie zwraca, kompilator dodaje sobie tylko parke do jakiegos "enviromentu".
PS Sorki Pisze z komorki

TU
  • Rejestracja: dni
  • Ostatnio: dni
  • Lokalizacja: Lublin
1

return lista = ['1', '2', '3', '4'] - przypisywanie niczego w Pythonie nie zwraca (w przeciwieństwie do C++) więc nie możesz tego zreturnować

SH
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 35
0

czy w takim razie mozecie polecic jakis konkretny tutorial, bo ten z ktorego tam korzystalem, bralem te zadania to nie taki koniecznie dobry.

TU
  • Rejestracja: dni
  • Ostatnio: dni
  • Lokalizacja: Lublin
1
shao. napisał(a):

czy w takim razie mozecie polecic jakis konkretny tutorial, bo ten z ktorego tam korzystalem, bralem te zadania to nie taki koniecznie dobry.

https://cgwisdom.pl/kurs-wideo/kurs-programowania-python-od-podstaw.html

lion137
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 5025
1

Jak Możesz po angielsku, to docs I tutorial na strone pythonga jest spoko na poczatek.

SH
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 35
0

A taki tutorial? Stąd? Bo akurat tak się złożyło, że kod skądś miałem na mejlu (nie mam pojecia skad bo nawet tam konta nie mialem do tej pory). Czy zainwestowac w to co Ty wyslales?

Kopiuj

https://strefakursow.pl/kursy/programowanie/kurs_programowania_w_python.html
  • jakiś tekstowy dobry?
TU
  • Rejestracja: dni
  • Ostatnio: dni
  • Lokalizacja: Lublin
1

@shao.: Nie wiem jak ten, ale kupiłem kiedyś na strefiekursów kurs do Objective-C (programowanie w iOS) i był tragiczny, a na cgwisdom jak dotąd są spoko (no i na cgwisdom jest do Pythona 3.6.1 - prawie najnowsza wersja).

Guaz
  • Rejestracja: dni
  • Ostatnio: dni
  • Lokalizacja: Częstochowa
  • Postów: 220
2

Do podstaw, polecam kurs wideo:

Następnie optymalizację tych funkcji na podstawie testowania z modułem time lub timeit (pierwsze, prostsze, znajdziesz w tym kursie). Metodami które znajdziesz w dokumentacji, jak przypisanie do zmiennej funkcji przypisującej elementy do listy, albo pracowanie na ich wyrywkach/indeksach.

A co do return'a robisz prosty błąd. Przetłumaczę to na laikowy język, bo niektórzy (z całym szacunkiem, ale jednak) robią wyżej niż mają pęknięcie pleców.
Ogólnie o returnie:
Wywołując w funkcji return, automatycznie kończysz jej działanie, kod wewnątrz niej, nie będzie się dalej wykonywał, zwróci wartość która następuje po jego wypisaniu.
W poleceniu return nie można przypisywać żadnych wartości. Bo return zwraca co mu dano do zwrotu, jeśli to będzie działanie 'return a+b' zwróci w miejscu wywołania wynik tego dodawania.
Jeśli dasz mu do zwrócenia listę, wystarczy to wypisać w ten sposób: 'return ['a', 'b', 'c'] lub możesz to przypisać do zmiennej w dwóch liniach:
'lista = ['a', 'b', 'c']
return lista'
Co jest równoważne z ostatnim przykładem.
Jeśli chcemy przypisać wynik return do zmiennej poza nim, trzeba to zrobić następująco:

'def jakas_funkcja(a):
return a+a

pierwsza = 3
dwukrotnosc = jakas_funkcja(pierwsza)'

Podajemy pierwsza do funkcji, więc zmienia się ona na zmienną 'a' wewnątrz funkcji. zwraca 'a+a', więc dwukrotnosc = a+a, czyli dwukrotnosc = pierwsza+pierwsza.

Jeśli coś pozostaje niejasne, to pisz śmiało, spróbuję wytłumaczyć innymi słowami :)

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.