Python 为什么要更改此字符串 卡片=['K','Q','J','10','Z'] 持有=[] 对于卡片中的卡片: 如果卡Z': 持有扩展卡 印相
输出为: ['K'、'Q'、'J'、'1'、'0'] 为什么不使用[K]、[Q]、[J]、[10']?您打算使用append: extend方法将该参数视为一个iterable,并迭代该参数并添加每个元素。因此,参数“10”将被视为与['1','0']相同。.extend对给定给它的元素进行迭代,并逐个添加它们,请参见Python 为什么要更改此字符串 卡片=['K','Q','J','10','Z'] 持有=[] 对于卡片中的卡片: 如果卡Z': 持有扩展卡 印相,python,python-3.x,Python,Python 3.x,输出为: ['K'、'Q'、'J'、'1'、'0'] 为什么不使用[K]、[Q]、[J]、[10']?您打算使用append: extend方法将该参数视为一个iterable,并迭代该参数并添加每个元素。因此,参数“10”将被视为与['1','0']相同。.extend对给定给它的元素进行迭代,并逐个添加它们,请参见 您将“10”添加为字符串,因此它会遍历其中的每个元素。因此,如果代码的其他部分没有问题,可以使用.append或输入10作为int。如其他答案中所述,使用extend会导致问题
您将“10”添加为字符串,因此它会遍历其中的每个元素。因此,如果代码的其他部分没有问题,可以使用.append或输入10作为int。如其他答案中所述,使用extend会导致问题 但是,如果您只是想删除所有出现的Z,您只需使用一个线性列表,如下所示: 卡片=['K','Q','J','10','Z'] 持卡量=[卡片中的卡片对卡片,如果卡片!=“Z”] 印刷控股公司 输出:
['K', 'Q', 'J', '10']
阅读更多关于列表理解的内容,因为您使用的是扩展,而不是附加。扩展的作用中明确提到了这一点。
['K', 'Q', 'J', '10']