簡體   English   中英

如何在Python中反轉字符串中的單詞(而不是反轉整個字符串)?

[英]How to reverse the words inside a string in Python (not reversing whole string)?

問題是這樣,但是我不能做字符串5反轉字符串。 句子將按以下方式加密。

•句子以字符串形式讀入,稱為string1。

•string2是使用循環創建的。 它是沒有空格的string1。

•string3是使用循環創建的。 它包含字符串1中的所有字符,以及每四個字符后的空格。

•string4是使用循環創建的。 每個字符均由字母表中的下一個字符代替,空格由“ *”代替,“ Z”或“ z”由“ A”或“ a”代替

•string5是使用循環或嵌套循環(循環內的循環)創建的。 每四個一組中的字符用“ *”隔開。

例如,如果string1 =“貓坐在墊子上”

string2 = “Thecatsatonthemat”

string3 = “Thec atsa tont hema t”

string4 = “Uifd*butb*upou*ifnb*u”

string5 = “dfiU*btub*uopu*bnfi*u”

我已經做到了,但是字符串5不起作用:

string1=str(input("Enter sentence: "))

string2=""

string3=""

string4=""

string5=""

count=0

for char in string1:

    if char==" ":

        string2=string1.replace(" ","")

    else:

        string2+=char


for char in string2:

    count+=1

    division=count%4

    if division==0:

        string3=string3+char+" "

    elif division!=0:

        string3=string3+char




for char in string3:

    newchar=""

    charnew="*"

    if char==" ":

        string4=string4+charnew

    else:

        newchar=chr(ord(char)+1)

        if newchar=="[":

            newchar="A"

        elif newchar=="{":

            newchar="a"

        string4=string4+newchar


#could not reverse the four letter sections but I reversed the whole string
rev=""        
for char in string4:
    rev=rev+char
    string5=rev[::-1]

print("string 1 = ",string1) 

print("string 2 = ",string2)

print("string 3 = ",string3)

print("string 4 = ",string4)

print("string 5 = ",string5)

這是程序運行時得到的:

Enter sentence: The cat sat on the mat 

u*bnfi*uopu*btub*dfiU

string 1 =  The cat sat on the mat 

string 2 =  Thecatsatonthemat

string 3 =  Thec atsa tont hema t

string 4 =  Uifd*butb*upou*ifnb*u

string 5 =  u*bnfi*uopu*btub*dfiU

拆分並加入:

s = "Hello World"

' '.join(i[::-1] for i in s.split(" "))

輸出:

'olleH dlroW'

您需要拆分單詞,然后反轉它們

s = 'Hello World'
line = [w[::-1] for w in s.split()]

['olleH', 'dlroW']

要將其打印為字符串,請使用print ' '.join(line)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM