首页 > 解决方案 > 如何使用前面带有# 的值搜索和返回列表?

问题描述

因此,我正在尝试使用 python 编写代码,其中用户输入某个输入,作为回报,它会给出一个列表,其中仅包含前面带有 (#) 的单词。

def labeled(): message_input=input("Enter a message or type q to end:").split() result=list(message_input) print (result)

到目前为止,我能够获取用户键入的消息并给出一个列表作为输出,但我希望用户输入一条消息(例如:“今天美好的一天#running #marathon”)并让 python 返回 [running,马拉松]。考虑到这一点,如果单词末尾也有标点符号(例如:#marathon。),我将如何删除它。输出应该是 [marathon]。

标签: pythonlistinput

解决方案


使用for loopandif-statement我们检查单词strats with #。创建空列表lst = []并将这些单词附加到列表中。#通过切片字符串从单词中删除。

 def labeled():
        message_input = input("Enter a message or type q to end:").split()
        result = list(message_input)
        lst =[]
        for i in result:
            if '#' in i :
               lst.append(i[1:])
        print(lst)
    
    
    labeled()

输出

Enter a message or type q to end: Nice day today #running #marathon"
['running', 'marathon"']

推荐阅读