Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/293.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 在字符串列表中查找特定字符_Python - Fatal编程技术网

Python 在字符串列表中查找特定字符

Python 在字符串列表中查找特定字符,python,Python,假设我有一个包含以下字符串的列表: list = ["Cat", "Bag?", "Dog", "?Duck"] 我如何只打印包含问号的单词 示例输出: Bag? contains a question mark ?Duck contains a question mark 您不应该将变量命名为“list”。撇开这一点不谈,下面的方法是可行的。只需使用“in”关键字 my_list=[“猫”、“包”、“狗”、“鸭

假设我有一个包含以下字符串的列表:

list = ["Cat", "Bag?", "Dog", "?Duck"]
我如何只打印包含问号的单词

示例输出:

Bag? contains a question mark
?Duck contains a question mark

您不应该将变量命名为“list”。撇开这一点不谈,下面的方法是可行的。只需使用“in”关键字

my_list=[“猫”、“包”、“狗”、“鸭子”]
打印('\n'.join(f'{word}包含一个问号,如果word中的'?'',则表示我的_列表中的word))
请注意,我

  • list
    重命名为
    my_list
    ,因为
    list
    是python中的一个内置类,重写它是不好的做法
  • 正如Brian和Chris指出的那样,在中使用了
  • 使用列表理解来避免在某些其他答案中使用
    if
    -子句

您可以在中这样使用

a = ['hi', 'hi?']
for i in a:
    if '?' in i:
        print(i+' contins a question mark')
输出:

hi? contins a question mark

我会试着重复每个单词。然后在每一个单词中,我都会重复一遍。如果我找到一个字母,说一个“?”然后我会打印这个单词

your_list = ["?adsd","dsasd"]
for words in your_list:
    for every_letter in words:
        if every_letter == '?':
            print(words)
列表理解

words_similar = [words for words in your_list for every_letter in words if every_letter == '?']```

您至少应该发布您尝试过的代码。您将需要使用
if
in
来检查问号是否在单词中……。对于试图学习如何打印带有特定字符的字符串的人来说,这太复杂了。他们可以在理解您的答案后尝试理解我的答案,这样可以扩展他们的python技能:)
for string in list:
    if "?" in string:
         echo string + "contains a question mark"
your_list = ["?adsd","dsasd"]
for words in your_list:
    for every_letter in words:
        if every_letter == '?':
            print(words)
words_similar = [words for words in your_list for every_letter in words if every_letter == '?']```