如何将字符串转换为整数python

2024-04-25 07:32:22 发布

您现在位置:Python中文网/ 问答频道 /正文

我对python语言相当陌生,但偶然发现了一些让我感到麻烦的东西。有没有办法把字符串变成整数?在

不,我指的不是如何转换像这样的数字的字符串:

int('1')

我确信我可以做这样的事情:

^{pr2}$

但是,有没有一种更简单的方法来完成这个任务,而不是像那样打字呢?在

在我试着把它放进去的情况下,我试着把一张牌的价值,比如一个杰克,相当于一个纸牌游戏中的10。在


Tags: 方法字符串语言游戏情况数字整数事情
3条回答

根据你最新的评论,我想你可能想给一个字符串键赋一个整数值。为此,你可以用字典。声明:

>>> cards = {"jack": 10, "queen": 10}
>>> print(cards["jack"])
10

由于your goal is to map specific cards(如21点游戏中)的值,请预先生成一个dict进行查找:

# 2-10
name_to_value = {str(num): num for num in range(2, 11)}
# Face cards
name_to_value.update(dict.fromkeys(('Jack', 'Queen', 'King'), 10))
# Ace is special
name_to_value['Ace'] = 11  # If it's blackjack, you might want to special case Ace

然后在以后使用它进行转换,例如:

^{pr2}$

I am trying to turn the value of a card, such as a Jack, equivalent to 10 in a card game

你需要检查字符串-如果数字,然后转换,否则得到相应的值。在

def get_card_value(s):
  if s.isdigit() and (1 < int(s) < 10):
    return int(s)
  elif s.lower() == 'jack':
    return 10
  elif s.lower() == 'queen':
    return 11
  elif s.lower() == 'king':
    return 12
  else:
    return -1  # Unknown

针对不同的值和ACE进行相应的修改

相关问题 更多 >