Python Django切片是';Don’我不在拉拉链

Python Django切片是';Don’我不在拉拉链,python,django,zip,slice,Python,Django,Zip,Slice,我最近一直在修补Django和Python,在试图限制代码中的for循环时,我注意到slice函数不起作用 我试图做的是从一个gig列表网站(我有权限)中抓取数据,然后在我自己的网站上列出接下来的5个gig列表。views.py中的数据刮取工作正常,但返回约40个结果。我曾尝试使用| slice::5来修剪HTML中的for循环,但它似乎不起作用,仍然显示所有40个列表 是否可以将slice与数组压缩一起使用?有更好的方法吗 HTML 如果你使用的是python3,那么你就不能切拉链。您可以尝试

我最近一直在修补Django和Python,在试图限制代码中的for循环时,我注意到slice函数不起作用

我试图做的是从一个gig列表网站(我有权限)中抓取数据,然后在我自己的网站上列出接下来的5个gig列表。views.py中的数据刮取工作正常,但返回约40个结果。我曾尝试使用| slice::5来修剪HTML中的for循环,但它似乎不起作用,仍然显示所有40个列表

是否可以将slice与数组压缩一起使用?有更好的方法吗

HTML


如果你使用的是python3,那么你就不能切拉链。您可以尝试使用以下命令将zip转换为列表:

>>> gigs = list(zip(dates, venuelinks, venues, times))

但这将破坏切片的许多目的,比如首先不生成大型数据集。然而,由于您已经在创建列表,我想这对您来说不是什么大问题。

如果您使用的是python3,那么您就不能对拉链进行切片。您可以尝试使用以下命令将zip转换为列表:

>>> gigs = list(zip(dates, venuelinks, venues, times))

但这将破坏切片的许多目的,比如首先不生成大型数据集。然而,由于您已经在创建列表,我想这对您来说不是什么大问题。

如果您使用的是python3,那么您就不能对拉链进行切片。您可以尝试使用以下命令将zip转换为列表:

>>> gigs = list(zip(dates, venuelinks, venues, times))

但这将破坏切片的许多目的,比如首先不生成大型数据集。然而,由于您已经在创建列表,我想这对您来说不是什么大问题。

如果您使用的是python3,那么您就不能对拉链进行切片。您可以尝试使用以下命令将zip转换为列表:

>>> gigs = list(zip(dates, venuelinks, venues, times))

但这将破坏切片的许多目的,比如首先不生成大型数据集。然而,由于您已经在创建列表,我想这对您来说不是什么大问题。

在zip对象上使用切片会引发TypeError。在这种情况下,
slice
模板过滤器会自动失败并返回初始值。

在zip对象上使用slice会引发TypeError。在这种情况下,
slice
模板过滤器会自动失败并返回初始值。

在zip对象上使用slice会引发TypeError。在这种情况下,
slice
模板过滤器会自动失败并返回初始值。

在zip对象上使用slice会引发TypeError。在这种情况下,
切片
模板过滤器会自动失败并返回初始值。

另一个选项可能是直接切片原始列表:

response = requests.get($URL) #anonymised for stackoverflow
soup = bs4.BeautifulSoup(response.text, "html.parser")

dates = [x.text for x in soup.select('$CONDITION')]
venues = [x.text for x in soup.select('$CONDITION')]
venuelinks = [x.attrs.get('href') for x in soup.select('$CONDITION')]
times = [x.text for x in soup.select('$CONDITION')]
gigs = zip(dates[:5], venuelinks[:5], venues[:5], times[:5])

t = loader.get_template('index.html')
html = t.render({'gig': gigs})  
return HttpResponse(html)

请参阅@f43d65答案以了解解释,为什么您当前的设置“无声”失败。。。并考虑在模板中尽可能少的操作和视图函数内部的大部分脏工作。

< P>另一个选项可以是直接分割原始列表:

response = requests.get($URL) #anonymised for stackoverflow
soup = bs4.BeautifulSoup(response.text, "html.parser")

dates = [x.text for x in soup.select('$CONDITION')]
venues = [x.text for x in soup.select('$CONDITION')]
venuelinks = [x.attrs.get('href') for x in soup.select('$CONDITION')]
times = [x.text for x in soup.select('$CONDITION')]
gigs = zip(dates[:5], venuelinks[:5], venues[:5], times[:5])

t = loader.get_template('index.html')
html = t.render({'gig': gigs})  
return HttpResponse(html)

请参阅@f43d65答案以了解解释,为什么您当前的设置“无声”失败。。。并考虑在模板中尽可能少的操作和视图函数内部的大部分脏工作。

< P>另一个选项可以是直接分割原始列表:

response = requests.get($URL) #anonymised for stackoverflow
soup = bs4.BeautifulSoup(response.text, "html.parser")

dates = [x.text for x in soup.select('$CONDITION')]
venues = [x.text for x in soup.select('$CONDITION')]
venuelinks = [x.attrs.get('href') for x in soup.select('$CONDITION')]
times = [x.text for x in soup.select('$CONDITION')]
gigs = zip(dates[:5], venuelinks[:5], venues[:5], times[:5])

t = loader.get_template('index.html')
html = t.render({'gig': gigs})  
return HttpResponse(html)

请参阅@f43d65答案以了解解释,为什么您当前的设置“无声”失败。。。并考虑在模板中尽可能少的操作和视图函数内部的大部分脏工作。

< P>另一个选项可以是直接分割原始列表:

response = requests.get($URL) #anonymised for stackoverflow
soup = bs4.BeautifulSoup(response.text, "html.parser")

dates = [x.text for x in soup.select('$CONDITION')]
venues = [x.text for x in soup.select('$CONDITION')]
venuelinks = [x.attrs.get('href') for x in soup.select('$CONDITION')]
times = [x.text for x in soup.select('$CONDITION')]
gigs = zip(dates[:5], venuelinks[:5], venues[:5], times[:5])

t = loader.get_template('index.html')
html = t.render({'gig': gigs})  
return HttpResponse(html)

请参阅@f43d65答案以了解解释,为什么您当前的设置“无声”失败。。。考虑在模板中尽可能少的操作和视图函数内部的大部分脏工作。我以前没有使用过ZIP,也不知道我不能使用slice。@CameronD17您可以通过设置slice size变量来进一步改进该功能,这样您的用户就可以决定是否要查看5个或10个事件。我想你可以自己从这里拿走它!很高兴我能帮助你!这很有效,谢谢!我以前没有使用过ZIP,也不知道我不能使用slice。@CameronD17您可以通过设置slice size变量来进一步改进该功能,这样您的用户就可以决定是否要查看5个或10个事件。我想你可以自己从这里拿走它!很高兴我能帮助你!这很有效,谢谢!我以前没有使用过ZIP,也不知道我不能使用slice。@CameronD17您可以通过设置slice size变量来进一步改进该功能,这样您的用户就可以决定是否要查看5个或10个事件。我想你可以自己从这里拿走它!很高兴我能帮助你!这很有效,谢谢!我以前没有使用过ZIP,也不知道我不能使用slice。@CameronD17您可以通过设置slice size变量来进一步改进该功能,这样您的用户就可以决定是否要查看5个或10个事件。我想你可以自己从这里拿走它!很高兴我能帮助你!