Strona główna Polish Python Coders Group
   Strona główna   Pomoc Zaloguj się Rejestracja  
Witamy, Gość. Zaloguj się lub zarejestruj.
Czy dotarł do Ciebie email aktywacyjny?

Zaloguj się podając nazwę użytkownika, hasło i długość sesji

Aktualności:
Szukaj Szukaj
Strony: [1]   Do dołu
Drukuj
Wątek: Jezeli sie wykona linia kodu zakoncz program  (Przeczytany 147 razy)
« : 16:28 22/01/19 »
Vondri Offline
Hello World!

Zobacz profil
*

Reputacja: 0
Wiadomości: 3


@edit

Witam mam jest pewna rzecz która mnie interesuje juz od paru dni,
Gdyż jestem poczatkujacym na wyzszym poziomie (umiem, petle, os, sys, lista, skladnia, if, else, while ,for) te najwazniejsze rzeczy ale nie o tym.

przykład:

from time import sleep

lista = []

P = int(input("Ile razy chcesz podac tekst?\n\t\t"))
a001 = 0

while a001 < P:
    Podaj_tekst = input("Podaj tekst: ")
    a001 += 1

try:
    print("trwa sortowanie...")
    sleep(0.5)
    Podaj_tekst.sort()
finally:
    if Podaj_tekst == True:   #Chodzi mi oto czy tak zadziala czy lepiej Podaj_tekst == Potaj_tekst Z politowaniem  print("Tekst zostal posortowany")

no to taki moze przyklad moze wam starczy dokladnie mi chodzi o to ze jak tekst zostanie posortowany i prog. wykryje ze ten kod sie wykonal to napisze print("Tekst posortowany")

z gory dziekuje Uśmiech    
  
Zapisane
« Odpowiedz #1 : 18:24 22/01/19 »
sig Offline
Professional Python User

Zobacz profil
***

Reputacja: 86
Wiadomości: 406


Kod daj w tagu dostępnym pod #, teraz nie widać co się w której pętli robi. Swoją drogą ten if ci się wykona tylko jeśli podaj tekst będzie cyfrą 1 albo true bez "" ani '', co łatwo sprawdzić:

Kod
tablica = ["1", 1, "2", 2, 0, [1, 2, 3], [1, 3, 2], "abc", "acb", True ]
 
for Podaj_tekst in tablica:
   if Podaj_tekst == True:
       print("prawda dla tekstu", Podaj_tekst )
   else:
       print("fałsz dla tekstu", Podaj_tekst)
 

ps powinno być raczej if Podaj_tekst is True: ale wtedy 1 jako cyfra też będzie fałszem. Napisz może dokładniej co chcesz uzyskać, jeśli sprawdzić czy tekst jest posortowany to chyba będziesz stosownej funkcji potrzebował.

edit: albo też działać na kopii tablicy, i sprawdzić czy się zmieniła
Zapisane
« Odpowiedz #2 : 20:47 22/01/19 »
Vondri Offline
Hello World!

Zobacz profil
*

Reputacja: 0
Wiadomości: 3


Kod
            if CPOWE_lower == "n":
           PDIJO = input("Ile jest osob: ")
           a001 = 0
 
           while a001 < PDIJO:
               print("Podaj osoby:"),
               PODE = raw_input()
 
               TM8.append(PODE)
 
               a001 += 1
 
           try:
               print("\tTrwa sortowanie...")
               sleep(1)
 
               TM8.sort()    
 
           finally:  #Dokladnie tu pod spodem
 
               if TM8 == TM8:
                   print("Posortowano w kolejnosci alfabetycznej...\n")
                   a002 = 0
                   while a002 < PDIJO:
                       sleep(0.75)
                       print(a002),
                       print("-"),
                       print(TM8[a002])
                       a002 += 1

Jakbys chcial moge ci wyslac caly program nad ktorym se pracuje.I ci bede mogl dokladnie wydlumaczyc co i jak chce zeby bylo jak cos dziekuje z gory  

@edit Niestety robie to na stary linuxie a co za tym idzie to i pythonie 2
Zapisane
« Odpowiedz #3 : 00:02 23/01/19 »
sig Offline
Professional Python User

Zobacz profil
***

Reputacja: 86
Wiadomości: 406


Uważaj z sortowaniem alfabetycznym, duża litera zawsze jest "szybciej" niż mała. masz przykład z poprawnym sprawdzeniem, wypisuje przed posortowaniem i po

Kod
tablica = ["Ada", "ada", "aDa", "zuzia", "Zuzia"]
tab2 = tablica.copy()
if tablica == tab2:
   print("posortowane")
else:
   print("nic nie ruszone")
print (tablica, "\n", tab2)
tablica.sort()
if tablica == tab2:
   print("posortowane")
else:
   print("nic nie ruszone")
print (tablica, "\n", tab2)
 
Zapisane
« Odpowiedz #4 : 10:26 23/01/19 »
Guaz Offline
Professional Python User

Zobacz profil
***

Reputacja: 53
Płeć: Mężczyzna
Wiadomości: 412


Przy sortowaniu alfabetycznie, (jako że python dysponuje domyślnie stabilnym sortowaniem, a przynajmniej tak uważają) używa się jako klucz porównywanie napisów zamiast domyślnie zastosowanego sortowania według wartości znaków. Nie wiem jak to zrobić w pythonie2, ale jeśli w pythonie3 zostawili tak jak w 2, to będzie w ten sposób:
Kod
tablica.sort(key=lambda x: x.lower())
To zapewni ci faktyczne sortowanie alfabetyczne Uśmiech
Zapisane

Python 3.5+ / Mint

Daje wędkę zamiast ryby. Chyba że ktoś się chce czegoś nauczyć, wtedy chętnie pomogę każdemu.
Za rybę niestety trzeba zapłacić Z politowaniem.
Strony: [1]   Do góry
Drukuj
Skocz do:  

© 2007 - 2019 Polish Python Coders Group
Powered by SMF 1.1.21 | SMF © 2006-2009, Simple Machines | Theme by PixelSlot