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

我在 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 = strArray

print(dynamic_array)

print(dynamic_array[3])

所以,我想将第三个元素03设为整数,并在数组的第六个元素显示与连续三个元素之后看起来像:03 80 90 a3 如果整数改变,它仍然在第六个元素之后,但只显示元素数量包括整数,例如有02 80 90 吗去做吧?


猛跑小猪
浏览 451回答 3
3回答

潇湘沐

您可以使用 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 = strArrayif dynamic_array[3].isdigit():    endValue = dynamic_array[3]    print dynamic_array[3]    for i in range(6,6+int(endValue)):        print dynamic_array[i]

跃然一笑

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]))

DIEA

您可以对dynamic_array列表进行切片并使用通用解包来形成一个新列表:n = dynamic_array[3]print([n, *dynamic_array[6 : 6 + int(n)]])
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python