- 在python中,如何只打印字符串的字母?

我有一个程序允许用户输入一个句子,它应该以小写字母输出前10个字母, 这个代码里我打印了字母和空格。是否有办法只打印小写的字母? 谢谢。

 

letters = str(input( " Enter a sentence: " ))


print(letters[0:10].lower())



时间:

代码:

 

import string



s = " Hello, I'm a human " 


result = " " 


letters = 0


alphabet = string.ascii_lowercase + string.digits



for c in s.lower():


 result += c


 if c in alphabet:


 letters += 1


 if letters> 9:


 break


print(result)



输出:

 

hello, i'm a hu



如果你想避免空格,你可以尝试。

 

letters = str(input( " Enter a sentence: " ))


print(letters.replace(' ','')[0:10].lower())



你可以尝试以下操作:

 

letters = input( " Enter a sentence: " )


letters = " " .join(filter(lambda letter: letter!= " " , letters))


print(letters[:10].lower())



代码将提示用户输入一个字符串,然后使用 filter,从letters的字母中构造一个迭代器, lambda letter: letter!= " " ("字符不等于空格字符")返回 true 。

这将删除所有非ascii字母数字字符:

 

import re


inp = str(input( " Enter a sentence: " ))


letters = re.sub(r'[^A-Za-z0-9]', '', inp)


print(letters[0:10].lower())



...