簡體   English   中英

您將如何檢查字母/數字/符號是否在字符串中? (Python)

[英]How would you check if a letter/number/symbol is in a string? (Python)

很抱歉問了一個相當簡單的問題,但是我將如何做到這一點,以便當某個字母(例如“a”)在元素中時某個字母/符號/數字會“激活”if語句。 如果我做

thestring = ["a"]

(然后添加 if 語句 ^^)然后它會起作用,但是如果我在它旁邊添加另一個字母或數字:

thestring = ["ab"]

(然后添加 if 語句 ^^)它不再起作用了。 所以基本上,我該如何解決這個問題?

示例代碼:

thestring = ["fvrbgea"]

if "a" in thestring:
  print("True")
Output: (Nothing here since there's not an else code I guess.)

正如 Klaus D. 所暗示的,您的字符串是一個包含一個元素的列表(“fvrbgea”)。 那個元素不等於字符串“a”。 如果您從字符串中刪除括號,您的代碼將按照您期望的方式執行。

如果您只想驗證字符串是否包含字母/數字/符號,您應該使用正則表達式:

import re

string = "mystring"

#Validate numbers, lowercase letters, dashes
if re.match("^[0-9a-z-]+$", string):
    print("True.")
else:
    print("False.")
thestring = ["fvrbgea"]
for el in thestring:
    if el.isnumeric():
        print("Numeric")
    elif el.isalnum():
        print("AlNum")
    # elif el.isPutSomethingHere

python基本庫有“is”方法來檢查字符串。

直接把 variable.isSomething 放在這里看看。

例子

如果你想檢查一個指定的字母是否在字符串中,只需遵循相同的邏輯,在某些情況下你會在初始循環中放置另一個

thestring = ["fvrbdoggea"]
control = list()
for el in thestring:
    for c in el:
        if "".join(control) != "dog":
            if c == "d" or c == "o" or c == "g":
                control.append(c)
print("".join(control))

你可以自動化,但是,這有點難,我不想這樣做,但是有了這個,你可以想個主意

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM