Skip to main content
 首页 » 编程设计

python之如何在涉及 if 语句的 python 中返回三个元组

2025年05月04日23zhenyulu

我正在尝试编写一个程序来打印三个元组,但我只成功地只返回了两个。

我想在元组中返回:字符、序数值和字符类型:“字母”、“数字”或“标点符号”。

我已经编写了 if/elif/else 来检查这三个值,但现在不知道如何将它们作为第三个值返回到元组中。

这是我的代码:

def character_info(char): 
      ord_value = ord(char) 
      ord_result = ord_value 
      if char.isdigit(): 
          "number" 
      elif char.isalpha(): 
          "letter" 
      else: 
          "punctuation" 
      return (char,ord_result) 
 
print character_info("t") 
print character_info("3") 
print character_info("-") 

实际输出:

('t', 116) 
('3', 51) 
('-', 45) 

预期输出

('t', 116, letter) 
('3', 51, number) 
('-', 45, punctuation) 

请您参考如下方法:

如果你写这样的语句:

"number" 

这是一个无操作:您只需编写一个文字,但您根本不对该文字执行任何操作。

这里的技巧是将该文字分配给一个变量,然后您可以在 return 语句中使用该变量。例如:

def character_info(char): 
      ord_value = ord(char) 
      ord_result = ord_value 
      if char.isdigit(): 
          <b>chartype = </b>"number" 
      elif char.isalpha(): 
          <b>chartype = </b>"letter" 
      else: 
          <b>chartype = </b>"punctuation" 
      return (char,ord_result<b>,chartype</b>)