0
printmystring = ""

mystring = input("Enter the sentence you wish to be an acronym: ")

mystring_length = len(mystring)

for i in range (0,mystring_length):
    if  mystring[i].isupper():
        print(mystring[i] ,end="")
        print(".",end="")

私の入力は「参考までに」です

出力は参考までに

4

4 に答える 4

2

このような小さなタスクのコードはかなり複雑に見えます。

リスト内のすべての大文字を収集する別のソリューションを紹介しましょう。

mystring = input("Enter the sentence you wish to be an acronym: ")
upper_letters = [letter for letter in mystring if letter.isupper()]
print('.'.join(upper_letters))

moarningsun が別の方法を提案しました。

upper_letters = filter(str.isupper, mystring)
于 2013-10-28T18:17:17.290 に答える
0

私はこれがうまくいくと確信しています:

mystring = input("Enter the sentence you wish to be an acronym: ")

mystring_length = len(mystring)

print(mystring[0] ,end="")

for i in range (1,mystring_length):
    if mystring[i].isupper():
        print(". " ,end="") 
        print(mystring[i],end="")
于 2013-10-28T18:08:32.900 に答える
0

あなたはこのようなものを探しています:

#initialize variables
buffer = ""
words = list()

#get input
mystring = input("Enter the sentence you wish to be an acronym: ")
mystring_length = len(mystring)

#parse words
for i in range (0, mystring_length)
     if mystring[i] == " "
         words.append(buffer)
         buffer = ""
     else
         buffer += mystring[i]

#add the final word to buffer
#as it is not followed by a space, it will not be added using the above algorithm
words.append(buffer)
buffer = ""

#loop through words
for i in range (0, len(words))
     print(words[i], end="")
     if (i != len(words))
          print(".", end="")

Python用に編集(私は思う)

于 2013-10-28T18:08:50.717 に答える
0
def acronym(sentence):
    return '.'.join([x[0].upper() for x in sentence.split()])    
于 2013-10-28T18:54:09.357 に答える