python - 如何编写函数以使用列表和整数作为参数返回列表元素
问题描述
我正在解决一个问题,我需要定义一个函数 ( get_element
),该函数接受两个参数(一个列表和一个整数),然后使用提供的整数作为索引位置值按其索引位置返回一个列表元素。
我得到了一个列表 ( more_elements = ["salad", 33, 3.14, ['dog','cat'], "fish", 19, 18]
) 来测试我的功能。
def get_element(a_list, a_int):
for a_int in a_list:
int(a_int)
return a_list[a_int]
这就是我当前的代码。但是,当我尝试运行它时,出现错误invalid literal for int() with base 10: 'salad'
我不确定这个错误是什么意思。我究竟做错了什么?
解决方案
对于您的问题的解决方案,您不需要 for 循环,因为您的返回调用已经满足了要求。
发生错误是因为您试图将字符串 ('salad') 转换为数字,这在以 10 为底的空间中不起作用;)。基本上,您现在使用 for 循环的方式是在“a_list”上进行迭代(循环)并尝试将每个元素转换为整数,但这对于该列表中的大多数字符串和列表很可能会失败。
推荐阅读
- r - R 片段中相邻的 $ 运算符
- java - 如何在一维数组Java中上下左右搜索
- regex - 仅解析具有多个匹配项的行中的第一个正则表达式匹配项
- css - 使用 bootstrap 4.3.1 时如何将卡片列放在页面中心?
- c++ - “因超时而终止”
- javascript - 在正文中发送字符串作为 POST REST 调用(javascript 到 Asp.Net Core)
- python - 如何垂直堆叠具有不同列名的熊猫数据框
- html - 获取WebView中脚本对react native的事件响应
- sql - sqlite3.OperationalError:靠近“BatchID”:语法错误
- r - 如何在绘图布局元素中包含悬停