PYTHON

PYTHON Ciągi znaków

String  – ciąg znaków

Przykłady:

a = "Kot"
b = 'Pies'
c = "John`s"
d = """Powiedział: "Cześć!" """

Ciąg znaków możemy zawrzeć wewnątrz cudzysłowu bądź apostrofów. Jeśli ciąg znaków ma zawierać apostrof, zawieramy go wewnątrz cudzysłowów.  Jeśli natomiast ciąg znaków zawierać ma fragment otoczony cudzysłowami, zawieramy go w potrójnym cudzysłowie.

Indeksy ciągów znaków

String jest indeksowany w dokładnie taki sam sposób jak lista. Dla przykładu ciąg znaków:

x = 'informatyk'
-10 -9 -8 -7 -6 -5 -4 -3 -2 -1
i n f o r m a t y k
0 1 2 3 4 5 6 7 8 9

 

Stąd przykładowo litera r posiada wartość indeksu 4 oraz -6.

Aby zatem wypisać jedynie literę r wykonalibyśmy jedną z dwóch poniższych instrukcji:

print(x[4])
print(x[-6])

 

Konkatenacja

Konkatenacja jest łączeniem ze sobą ciągów znaków. W języku Python dokonujemy jej za pomocą symbolu +.

Przykłady:

x = 'Technik'
y = 'Informatyk'
z = x + y
print(z)

Efekt: TechnikInformatyk

 

Multiplikacja

Wykorzystując symbol iloczynu możemy spowodować powielenie ciągu znaków. Przykład:

x = 'Technik'
y = 'Informatyk'
z = 4*x
print(z)

Efekt: TechnikTechnikTechnikTechnik

 

Liczba, a ciąg znaków

Przypisując wartość liczbową, całkowitą, do zmiennej mamy typ zmiennej int. Robiąc to samo, zamykając liczbę w apostrofy czy cudzysłowy, otrzymujemy typ str.

x = 25
y = '25'
print(type(x))
print(type(y))

Efekt:

Typ zmiennej x: int

Typ zmiennej y: str

Pociąga to za sobą pewne konsekwencje. Spróbujmy dodać do siebie zmienne x oraz y:

x = 25
y = '25'

z = x + y

print(z)

Otrzymujemy błąd – nie możemy do siebie dodać wartości liczbowej i tekstowej.

Wymuśmy zatem zmianę typu zarówno w jedną, jak i w drugą stronę (z int na str  /  ze str na int):

x = 25
y = '25'

z = x + int(y)

print(z)

Efekt: 50


x = 25
y = '25'

z = str(x) + y

print(z)

Efekt: 2525

Gdy wartości obu zmiennych są liczbowe, zostają do siebie dodane – stąd wynik 50 (25+25). Natomiast gdy wartości obu zmiennych są typu string, dochodzi do konkatenacji – ciągi znaków zostały połączone, stąd wynik 2525.