Python3:zip in range

mar*_*arv 2 python python-3.x

我是Python的新手,我试图将2个列表压缩成1,这是我已经能够做到的.我有2个列表,里面有几个东西,但我要求用户输入一个数字,这应该决定了范围.所以我有List1:A1,A2,A3,A4,A5,A6和List2:B1,B2,B3,B4,B5,B6我知道如何显示2个完整列表,但我正在尝试做什么是,如果用户输入数字"3",则zip应仅显示:(A1,B1),(A2,B2),(A3,B3)而不是整个列表.所以这就是我尝试过的:

a = ["A1", "A2", "A3", "A4", "A5", "A6"]
b = ["B1", "B2", "B3", "B4", "B5", "B6"]
c = zip(a,b)
number = int(input("please enter number"))
for x in c:
    print(x[:number])
Run Code Online (Sandbox Code Playgroud)

但这不起作用.我试着查一查,但找不到任何东西.如果有人可以帮助我,我会很高兴的.

ale*_*cxe 8

你可以切片的结果zip()itertools.islice():

>>> from itertools import islice
>>> list(islice(c, number))
[('A1', 'B1'), ('A2', 'B2'), ('A3', 'B3')]
Run Code Online (Sandbox Code Playgroud)