ホームページ >バックエンド開発 >Python チュートリアル >ループを使用した Python Day-String 関数ロジック

ループを使用した Python Day-String 関数ロジック

Susan Sarandon
Susan Sarandonオリジナル
2024-12-14 00:28:11390ブラウズ

Python Day-String functions logic using loops

1) replace(): 指定された値を指定された値に置き換えた文字列を返します。

txt = "I like bananas"
already = "bananas"
new = "apples"

l = len(already) # l = 7
start = 0 
end = l 
while end<=len(txt):
    if txt[start:end] == 'bananas':
        print(txt[:start],new)
    start+=1
    end+=1

出力:

I like  apples

--> Python ではすべてがオブジェクトです。
-->オブジェクトごとに異なるメモリ空間があります。
-->文字列は不変です:
-->不変: 変更不可能 - மாறாது。
-->既存の文字列を編集しようとしても、変更されません。代わりに、新しい値を保存するために新しいメモリが作成されます。
-->同じ文字列は同じメモリを参照できます。

例:

country1 = 'India'
country2 = 'India'
country3 = 'India'
country4 = 'India'
print(id(country1))
print(id(country2))
print(id(country3))
print(id(country4))
country1 = "Singapore"
print(id(country1))

出力:

137348796892288
137348796892288
137348796892288
137348796892288
137348795520944

最後の print ステートメントでは、新しいメモリが作成され、文字列は変更できません。

2) rfind() と rindex() の違い:
指定された値を文字列で検索し、見つかった最後の位置を返します。
例:1

txt = "Mi casa, su casa."

x = txt.rfind("basa")
print(x) 
x = txt.rindex("basa")
print(x)

出力:

-1
ValueError: substring not found

--> rfind() では、文字列が見つからない場合は -1 を返します。
-->rindex() で文字列が見つからない場合は valueError を返します。

例:2(ロジック)

txt = "Python is my favourite language"
key = 'my'
l = len(key)
start = len(txt) - l
end = len(txt)

while start >= 0:
    if txt[start:end] == key:
        print(start)
        break
    start -= 1
    end -= 1
else:
    print('-1 or ValueError')

出力:

10

3) split(): 指定された区切り文字で文字列を分割し、リストを返します。

txt = "Today is Wednesday"
word = ''
start = 0
i = 0 
while i<len(txt):
    if txt[i]==' ':
        print(txt[start:i])
        start = i+1
    elif i == len(txt)-1:
        print(txt[start:i+1])
    i+=1

出力:

Today
is
Wednesday

以上がループを使用した Python Day-String 関数ロジックの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。