='A' および文字の場合"/> ='A' および文字の場合">

日文字列関数と再帰

Patricia Arquette
Patricia Arquetteオリジナル
2024-12-28 00:03:17177ブラウズ

Day  String Functions and Recursion

1.文字列の間にスペースを追加するプログラムを作成します。

txt = "TodayIsFriday"
first = True
for letter in txt:
    if letter>='A' and letter<='Z':
        if first==True:
            first = False
        else:
            print(' ',end='')
    print(letter,end='')
Today Is Friday

2.文字列間のスペースを削除するプログラムを作成します。

txt = "    Today Is Friday"
for letter in txt:
    if letter==' ':
        pass
    else:
        print(letter,end='')

TodayIsFriday

3. 文字列の左側のスペースを削除するプログラムを作成します。

ltrim() - 文字列の左側から先頭の空白または指定された文字を削除します。

txt = "    Today Is Friday"
alphabet = False
for letter in txt:
    if letter==' ' and alphabet==False:
        pass
    else:
        alphabet = True
        print(letter,end='')
Today Is Friday

4. 文字列の右側のスペースを削除するプログラムを作成します:

rtrim() - 文字列の右側から先頭の空白または指定された文字を削除します。

txt = "Today Is Friday   "
alphabet = False
i = len(txt)-1
while i>=0:
    letter = txt[i]
    if letter==' ' and alphabet == False:
        pass
    else:
        alphabet = True
        end = i
        j = 0
        while j<=end:
            print(txt[j],end='')
            j+=1
        break
    i-=1     

Today Is Friday

5.指定された文字列から不要なスペースを削除するプログラムを作成します:

txt = "Today              Is                       Friday"
i = 0 
while i<len(txt):
    if txt[i] != ' ':
        print(txt[i],end='')
    else:
        if txt[i-1]!=' ':
            print(txt[i],end='')
    i+=1  

Today Is Friday

再帰:
自分自身を呼び出す関数。

関数とは何ですか?
特定のタスクを達成するための名前付きの if 命令を設定します。

ループ反復アプローチ。
再帰 - 再帰的アプローチ。

例:

def display(no):
    print(no, end=' ')
    no+=1
    if no<=5:
        display(no)
display(1)
1 2 3 4 5

再帰を使用して階乗プログラムを作成します:

def find_fact(no):
    if no==1:
        return 1
    return no * find_fact(no-1)

result = find_fact(4)
print(result)
24

タスク:
指定された文字列から不要なスペースを削除するプログラムを作成します:

strip() - 文字列の先頭と末尾からすべての空白文字を削除します。

txt = "    Today Is Friday    "
first=True
for letter in txt:
    if letter==" ":
        pass
    else:
        if letter>='A' and letter<='Z':
            if first==True:
                first = False
            else:
                print(' ',end='')
        print(letter,end='')
Today Is Friday

再帰を使用して、指定された番号に逆順でプログラムを書き込みます:

def reverse_number(num,reverse=0):
    if num==0:
        return reverse
    return reverse_number(num//10,reverse*10+num%10)
num=int(input("Enter the number:"))
print(reverse_number(num))

Enter the number:123
321

指定された数値が回文であるか、再帰を使用しないかを調べるプログラムを作成します:

def palindrome(num,count=0):
    if num==0:
        return count
    return palindrome(num//10,count*10+num%10)

num=int(input("Enter the number:"))
result=palindrome(num)
if result==num:
    print("Palindrome")
else:
    print("Not palindrome")

Enter the number:1221
Palindrome
Enter the number:56878
Not palindrome

再帰を使用してフィボナッチ数を見つけるプログラムを作成します:

def find_fibonacci(first_num,sec_num,no):
    if first_num > no:
        return
    print(first_num, end=" ")

    find_fibonacci(sec_num,first_num+sec_num,no)      

no = int(input("Enter the number: ")) 
find_fibonacci(0,1,no)
0 1 1 2 3 5 8

再帰を使用して素数を見つけるプログラムを作成します:

def find_prime(no,div=2):
    if div<no:
        if no%div == 0:
            return False
        div+=1
        return find_prime(no,div)
    else:
        return True

no = int(input("Enter no. "))
print(find_prime(no))

Enter no. 12
False

以上が日文字列関数と再帰の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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