为了账号安全,请及时绑定邮箱和手机立即绑定

从 Python 中的数组中获取特定元素

从 Python 中的数组中获取特定元素

猛跑小猪 2021-06-30 13:07:24
我在 Visual Studio 上工作关于 Python 3 项目。用户输入一个数字01102003060d8090a305 然后我将数字分开,如下所示:['01', '10', '20', '03', '06', '0d', '80', '90', 'a3', '05']并使用以下代码获取列表的第四个元素:dynamic_array = [ ]hexdec = input("Enter even number ");strArray = [hexdec[idx:idx+2]  for idx in range(len(hexdec)) if idx%2 == 0]dynamic_array = strArrayprint(dynamic_array)print(dynamic_array[3])所以,我想将第三个元素03设为整数,并在数组的第六个元素显示与连续三个元素之后看起来像:03 80 90 a3 如果整数改变,它仍然在第六个元素之后,但只显示元素数量包括整数,例如有02 80 90 吗去做吧?
查看完整描述

3 回答

?
潇湘沐

TA贡献1816条经验 获得超6个赞

您可以使用 isdigit() 来验证数组中是否有数字或字母:


dynamic_array = [ ]

hexdec = input("Enter even number ");

strArray = [hexdec[idx:idx+2]  for idx in range(len(hexdec)) if idx%2 == 0]

dynamic_array = strArray

if dynamic_array[3].isdigit():

    endValue = dynamic_array[3]

    print dynamic_array[3]

    for i in range(6,6+int(endValue)):

        print dynamic_array[i]


查看完整回答
反对 回复 2021-07-13
?
跃然一笑

TA贡献1826条经验 获得超6个赞

num = dynamic_array[3]

integer_array = [num]

for i in dynamic_array[6:]:

    if i.isdigit():

        integer_array.append(i)

print(' '.join(integer_array[:int(num) + 1]))


查看完整回答
反对 回复 2021-07-13
?
DIEA

TA贡献1820条经验 获得超2个赞

您可以对dynamic_array列表进行切片并使用通用解包来形成一个新列表:


n = dynamic_array[3]

print([n, *dynamic_array[6 : 6 + int(n)]])


查看完整回答
反对 回复 2021-07-13
  • 3 回答
  • 0 关注
  • 450 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信