niedziela, 30 marca 2014

Kurs Python'a - String cz.7

W najbliższych wpisać przyjrzymy się bliżej operacjom na ciągach znaków,listach, krotkach oraz słownikach.

1) Dostęp do zmiennych:

Zacznijmy od inicjacji zmiennych:

var1='Hello World'
var2="Python programming"

Wykorzystamy je w programie:

#!/usr/bin/python

var1 = 'Hello World!'
var2 = "Python Programming"

print "var1[0]: ", var1[0]
print "var2[1:5]: ", var2[1:5]

W wyniku otrzymamy wycięte odpowiednie fragmenty naszych napisów:

var1[0]:  H

var2[1:5]:  ytho







2) Update zmiennych:


Jesteśmy w stanie przy pomocy zakresów zmienić pewne dane w naszych zmiennych:


#!/usr/bin/python

var1 = 'Hello World!'

print "Updated String :- ", var1[:6] + 'Python'



Wynik:

Updated String :-  Hello Python


Ze starego ciągu zostawiamy 6 pierwszych znaków, od 7 znaku wstawimy 'Python'.












3) Operacje na string'ach:


Weźmy pod uwagę dwie nowe zmienne:

a='Hello'
b='Python'

- konkatenacja - + - łączenie dwóch ciągów w jeden, w naszym przypadku a+b da HelloPython,
- powtarzanie - * - daje możliwość powielenia napisu, a*2, da HelloHello,
- wycięcie - [] - możemy wyciąć konkretny znak z napisu, b[1], da nam P,
-wycięcie zakresu - [:] - przy pomocy zakresu możemy wyciąć więcej niż jeden znak, a[1:4], da nam ell,
- zawiera - in - sprawdza czy znak o który pytamy jest w naszej zmiennej, 'H' in a, da nam prawdę,
- nie zawiera - not in- sprawdza czy znak nie jest zawarty w napisie, 'B' not in a, da nam prawdę

3) Wbudowane metody języka:

3.1) Center():

Przy jej pomocy jesteśmy  stanie dopełnić nasz napis określoną liczbą określonych znaków, tak aby zachować identyczny wygląd porcji danych. W poniższym przypadku nasz napis składający się z 32 znaków dopełnimy z obu stron do 40 znaków, poprzez dodanie na początek oraz na koniec pojedynczych znaków 'a':

#!/usr/bin/python

str = "this is string example....wow!!!";

print "str.center(40, 'a') : ", str.center(40, 'a')


Wynik:

str.center(40, 'a') :  aaaathis is string example....wow!!!aaaa


3.2) Count():

Count pozwala nam na sprawdzenie ile razy sub występuje w naszym badanym ciągu, 2 oraz 3 parametr ustawia zakres w którym szukamy wystąpień naszego podciągu, składnia count: str.count(sub, start= 0,end=len(string)) zawiera 3 parametry:

-sub - przekazany string,
-start - ustawiamy początek od którego sprawdzamy występowanie podciągu,
- end - ustawiamy koniec do którego sprawdzamy występowanie podciągu,

#!/usr/bin/python

str = "this is string example....wow!!!";

sub = "i";
print "str.count(sub, 4, 40) : ", str.count(sub, 4, 40)
sub = "wow";
print "str.count(sub) : ", str.count(sub)

Wynik:

str.count(sub, 4, 40) :  2 # 'i' występuje 2 razy od 4 do 40 znaku
str.count(sub, 4, 40) :  1 # 'wow' występuje 1 w rządanym zakresie

3.3) Encode():

Nasz napis możemy zakodować, tak aby był niezrozumiały dla użytkownika:

#!/usr/bin/python

str = "this is string example....wow!!!";

print "Encoded String: " + str.encode('base64','strict')


Wynik:


Encoded String: dGhpcyBpcyBzdHJpbmcgZXhhbXBsZS4uLi53b3chISE=


3.3) Decode():

Możemy również odszyfrować zakodowany napis:

#!/usr/bin/python

str = "this is string example....wow!!!";
str = str.encode('base64','strict');

print "Encoded String: " + str;
print "Decoded String: " + str.decode('base64','strict')


Wynik:

Encoded String: dGhpcyBpcyBzdHJpbmcgZXhhbXBsZS4uLi53b3chISE=


Decoded String: this is string example....wow!!!


3.4) Find():

Metoda ta pozwala nam na wyszukanie w zadanym ciągu, szukanego wyrażenia.

str1.find(str2, beg=0 end=len(string))

-str1 -  jest to ciąg w którym będziemy szukać naszego wyrażenia,
-str2 -  jest to ciąg, którego będziemy szukać w str1,
-beg -  punkt startowy od którego zaczynamy szukanie ciągu str2 w ciągu str1,
-end -  tutaj kończymy wyszukiwanie,

#!/usr/bin/python

str1 = "this is string example....wow!!!";
str2 = "exam";

print str1.find(str2);
print str1.find(str2, 10);
print str1.find(str2, 40);

Wynik:

15 - indeks od którego zaczyna się wyszukiwane wyrażenie (liczymy    od 0 indeksu)
15
-1 - błąd, który daje nam do zrozumienia że w tym miejscu nie ma szukanego wyrażenia


3.5)Isdigit():

Sprawdza czy nasz string zawiera liczby.

#!/usr/bin/python

str = "123456";  
print str.isdigit();

str = "this is string example....wow!!!";
print str.isdigit();




Wynik:

True
False

3.6) Islover():

Sprawdza czy w naszym ciągu znajdują się tylko małe litery.

#!/usr/bin/python

str = "THIS is string example....wow!!!"; 
print str.islower();

str = "this is string example....wow!!!";
print str.islower();

Wynik:

False
True

3.7) Isnumeric():

Sprawdza czy w ciągu znajdują się tylko cyfry.

#!/usr/bin/python

str = u"this2009";  
print str.isnumeric();

str = u"23443434";
print str.isnumeric();

Wynik:

False

True

3.8) Isspace():

Sprawdza czy nasz ciąg zawiera tylko i wyłącznie spacje.

#!/usr/bin/python

str = "       "; 
print str.isspace();

str = "This is string example....wow!!!";
print str.isspace();

Wynik:

True

False


3.9) Istitle():

Sprawdza czy pierwsze litery wszystkich słów są pisane dużą literą.

#!/usr/bin/python

str = "This Is String Example...Wow!!!";
print str.istitle();

str = "This is string example....wow!!!";
print str.istitle();

Wynik:

True

False

3.10) Isupper():

Sprawdza czy wszystkie znaki w ciągu są duże.

#!/usr/bin/python

str = "THIS IS STRING EXAMPLE....WOW!!!"; 
print str.isupper();

str = "THIS is string example....wow!!!";
print str.isupper();

Wynik:

True

False

3.11) Join():

Pozwala połączyć elementy ciągu w jeden ciąg oddzielany znakami podanymi jako parametr.

#!/usr/bin/python

str = "-";
seq = ("a", "b", "c"); # This is sequence of strings.
print str.join( seq );

Wynik:

a-b-c



3.12) Len():


Pokaże nam długość naszego ciągu.

#!/usr/bin/python

str = "this is string example....wow!!!";

print "Length of the string: ", len(str);

Wynik:


Length of the string:  32

3.13) Lower():

Zamienia cały nasz ciąg z dużych na małe znaki.

#!/usr/bin/python

str = "THIS IS STRING EXAMPLE....WOW!!!";

print str.lower();

Wynik:


this is string example....wow!!!

3.14) Max():

W wyniku otrzymamy literę, która jest najdalej na liście w alfabecie (znajduje się najbliżej jego końca).

#!/usr/bin/python

str = "this is really a string example....wow!!!";
print "Max character: " + max(str);

str = "this is a string example....wow!!!";
print "Max character: " + max(str);

Wynik:

Max character: y
Max character: x

3.15) Min():

W wyniku otrzymamy znak o najniższym numerze w kodowaniu.

#!/usr/bin/python

str = "this-is-real-string-example....wow!!!";
print "Min character: " + min(str);

str = "this-is-a-string-example....wow!!!";
print "Min character: " + min(str);

Wynik:

Min character: !

Min character: !

3.16) Replace():

Zamienia wyrażenie jako pierwszy parametr na to podane w drugim parametrze.

#!/usr/bin/python

str = "this is string example....wow!!! this is really string";
print str.replace("is", "was");
print str.replace("is", "was", 3);

Wynik:

thwas was string example....wow!!! thwas was really string

thwas was string example....wow!!! thwas is really string

3.17) Strip():

Pozwala usunąć z badanego ciągu podany jako parametr element.

#!/usr/bin/python

str = "0000000this is string example....wow!!!0000000";
print str.strip( '0' );

Wynik:


this is string example....wow!!!

3.18) Title():

Zamienia każdą pierwszą małą literę z małej na dużą.

#!/usr/bin/python

str = "this is string example....wow!!!";
print str.title();

Wynik:


This Is String Example....Wow!!!

3.19) Upper():

Zamienia małe litery na duże w podanym ciągu znaków.

#!/usr/bin/python

str = "this is string example....wow!!!";

print "str.capitalize() : ", str.capitalize()

Wynik:


THIS IS STRING EXAMPLE....WOW!!!



Brak komentarzy:

Prześlij komentarz