实现一个不带参数的函数punctuation(),从用户输入一个字符串,并按从左到右的顺序打印出现在字符串中的所有标点字符。
def punctuation():
a = raw_input("Please enter a string:")
check = ['!', ',', '.', ':', '?', ';']
for p in check:
if p in a:
a.remove(p)
我一直在IDLE上收到一个错误标志,表明raw_input没有定义?那么,我不太熟悉split()应该做什么?温柔的家伙,我是一个蟒蛇n00b。
答案 0 :(得分:1)
听起来您使用的是Python 3. raw_input()
已替换为input()
答案 1 :(得分:1)
就逻辑而言,您可能希望以相反的方式执行此操作。
看起来string
模块可以在这里提供帮助:
>>> import string
>>> string.punctuation
'!"#$%&\'()*+,-./:;<=>?@[\\]^_`{|}~'
所以,你会在程序中编写一些内容:
for each_character in mystr:
if each_character in string.punctuation:
是的,您可以在python2中使用raw_input()
来获取您正在获取的字符串。对于python3,您应该使用input()