Python 如何删除附加了变量的特定str? 随机导入 ##玩家卡 玩家卡n=0 玩家卡=[] 当玩家卡数小于7时: 卡片颜色1=[“红色”、“绿色”、“黄色”、“蓝色”、“通配符”] card_num1=(random.randint(0,9)) rand_value1=(随机选择([[card_num1]、“+4”、“+2”、“*反向*”、“*跳过转弯*”])) rand_color1=(随机选择(卡片_color1)) player_cards.append(str(rand_color1)+“”+str(rand_value1)) 玩家卡长度+=1 如果玩家卡数=7: 打印(“这些是你的卡片:”) 打印(玩家卡) 尽管如此: val=random.randint(0,6) num_wild=“通配符[”,val,”“ 不是通配符=“通配符”+“[1]”“+“[2]”或“+”[3]”“+“[4]”或“+”[5]”或“+”[6]”或“+”[7]”或“+”[8]”或“+”[9]” 如果玩家卡中出现“通配符*跳过回合*”: 玩家卡。移除(“通配符*跳过回合*”) 玩家卡长度-=1 玩家卡中的elif“通配符*反转*”: 玩家卡。移除(“通配符*反转*”) 玩家卡长度-=1 玩家卡中的elif“通配符+2”: 玩家卡。移除(“通配符+2”) 玩家卡长度-=1 elif非玩家卡中的通配符: 打印(“oof”,玩家卡) 玩家卡。移除(不是通配符) 玩家卡长度+=1 打印(玩家卡) 打破
我正在尝试删除玩家卡中的所有“通配符[int]”实例,因为这样的卡在uno中不存在。Python 如何删除附加了变量的特定str? 随机导入 ##玩家卡 玩家卡n=0 玩家卡=[] 当玩家卡数小于7时: 卡片颜色1=[“红色”、“绿色”、“黄色”、“蓝色”、“通配符”] card_num1=(random.randint(0,9)) rand_value1=(随机选择([[card_num1]、“+4”、“+2”、“*反向*”、“*跳过转弯*”])) rand_color1=(随机选择(卡片_color1)) player_cards.append(str(rand_color1)+“”+str(rand_value1)) 玩家卡长度+=1 如果玩家卡数=7: 打印(“这些是你的卡片:”) 打印(玩家卡) 尽管如此: val=random.randint(0,6) num_wild=“通配符[”,val,”“ 不是通配符=“通配符”+“[1]”“+“[2]”或“+”[3]”“+“[4]”或“+”[5]”或“+”[6]”或“+”[7]”或“+”[8]”或“+”[9]” 如果玩家卡中出现“通配符*跳过回合*”: 玩家卡。移除(“通配符*跳过回合*”) 玩家卡长度-=1 玩家卡中的elif“通配符*反转*”: 玩家卡。移除(“通配符*反转*”) 玩家卡长度-=1 玩家卡中的elif“通配符+2”: 玩家卡。移除(“通配符+2”) 玩家卡长度-=1 elif非玩家卡中的通配符: 打印(“oof”,玩家卡) 玩家卡。移除(不是通配符) 玩家卡长度+=1 打印(玩家卡) 打破,python,list,Python,List,我正在尝试删除玩家卡中的所有“通配符[int]”实例,因为这样的卡在uno中不存在。 多年来一直在研究这个问题,如果能让它尽可能简单就好了。请帮助?您需要创建一个包含通配符的正则表达式,然后删除所有这些字符。不需要正则表达式,删除所有开头的字符(“通配符[”)就足够了。 import random ##player cards player_cardsnum = 0 player_cards = [] while player_cardsnum < 7: card_colour
多年来一直在研究这个问题,如果能让它尽可能简单就好了。请帮助?您需要创建一个包含
通配符的正则表达式,然后删除所有这些字符。不需要正则表达式,删除所有开头的字符(“通配符[”)
就足够了。
import random
##player cards
player_cardsnum = 0
player_cards = []
while player_cardsnum < 7:
card_colour1 = ["red", "green","yellow","blue","wildcard"]
card_num1 = (random.randint(0,9))
rand_value1 = (random.choice([[card_num1],"+4","+2"," *reverse*"," *skip turn*"]))
rand_colour1 = (random.choice(card_colour1))
player_cards.append (str(rand_colour1) + " " + str(rand_value1))
player_cardsnum += 1
if player_cardsnum == 7:
print ("these are your cards:")
print (player_cards)
while True:
val = random.randint(0,6)
num_wild = "wildcard [",val,"]"
not_wildcard = "wildcard" + "[1]" + "[2]" or + "[3]" + "[4]" or + "[5]" or + "[6]" or + "[7]" or + "[8]" or + "[9]"
if "wildcard *skip turn*"in player_cards:
player_cards.remove ("wildcard *skip turn*")
player_cardsnum -= 1
elif "wildcard *reverse*"in player_cards:
player_cards.remove ("wildcard *reverse*")
player_cardsnum -= 1
elif "wildcard +2"in player_cards:
player_cards.remove ("wildcard +2")
player_cardsnum -= 1
elif not_wildcard in player_cards:
print ("oof", player_cards)
player_cards.remove (not_wildcard)
player_cardsnum +=1
print (player_cardsnum)
break