我希望有变量来控制列表开头和结尾有多少元素可以跳过,例如
protected void Application_Start(object sender, EventArgs e)
{
RegisterRoutes(RouteTable.Routes);
}
public static void RegisterRoutes(RouteCollection routes)
{
var environment = ConfigurationManager.AppSettings["Environment"].ToString();
if (environment.Equals("Development"))
{
routes.MapPageRoute("", "dev/{action}/{categoryName}","~/categoriespage.aspx");
}
}
返回[8,7]。
如Why does slice [:-0] return empty list in Python所示,skip_end = 0会给出一个空列表。
在这种情况下,我实际上只想要my_list [skip_begin:]。
skip_begin = 1
skip_end = 2
my_list = [9,8,7,6,5]
print(my_list[skip_begin:-skip_end])
不起作用。如何在三元运算中返回空值?
我宁愿在" []"内使用三元操作。而不是
my_list[skip_begin:-skip_end if skip_end != 0 else '']
或if-else块。
答案 0 :(得分:8)
UIViewController
第一个解决方案的问题是索引切片需要一个数字(或空值),而不是字符串。
可替换地:
my_list[skip_begin:-skip_end if skip_end != 0 else None]
答案 1 :(得分:6)
my_list[skip_begin:-skip_end if skip_end else None]
你的专栏:
my_list[skip_begin:-skip_end if skip_end != 0 else '']
可能会让你走上正轨,因为它会产生:
TypeError:切片索引必须是整数或无或具有__index__ 方法
我的灵感来自之前的答案,但if skip_end != 0
与skip_end
相同
答案 2 :(得分:-1)
my_list[skip_begin:-skip_end if skip_end != 0 else skip_begin:]