擅长:python、mysql、java
<p>根据描述,你可能想得太多了:它只涉及一个句子,然后你只需确保第一个字母大写,结尾有标点符号:</p>
<pre><code>def sentence():
text=input("Please type a sentence here: ")
if text[0].isalpha() and not text[0].isupper(): # Begins with letter, but not uppercase?
text=text[0].upper()+text[1:] # Make it uppercase then
print("Sentences should start in uppercase");
if text[-1] not in [".","!","?"]: # Does not end with punctuation?
text+="." # Append a period then
print("Sentences should end with punctuation mark")
return text
</code></pre>
<p>它既可以被扩展(比如<code>.strip()</code>-ing空白,只需将其添加到<code>input</code>-行),也可以缩短(第一个<code>if</code>可以删除,因为对已经大写的东西调用<code>.upper()</code>没有什么错)。但是,由于必须打印错误,<code>if</code>必须保留在这个特定的情况下。在</p>