我有一个文档列表,我想在网页上显示按名称的第一个字母分组的三个列.
简而言之,这样的事情:
A | C | E
A | D | F
B | D | F
B | D | F
| D |
Run Code Online (Sandbox Code Playgroud)
与Windows资源管理器视图风格的一个重要区别在于我希望字母相互保持一致.没有打破中间组.为了适应这种情况,我不在乎一列是否有一些条目太高.
我首先按名称对文档数组进行排序,然后将它们拆分为嵌套数组.所以我知道(或者很容易找到):
我不关心你的答案是什么.我正在寻找算法而不是实现,所以你可以编写你喜欢的任何东西(除了Fortran).HTML中的解释也可能是一个棘手的问题.
我邀请有人在标签上疯狂,因为我想不出任何相关和不,这不是作业,所以请不要这样标记.
请原谅(或改进标题),但我有一个愚蠢的小问题让我非常不确定.
我有一个列表,可以包含一到两个值,从不更多,从不更少,只有这两个选项:
options = ['option one', 'option two']
Run Code Online (Sandbox Code Playgroud)
正如我所说,有时列表中可能只有其中一个值,所以它可能就是这样 ['option two',]
其范围是在网站上进行简单导航.我接受查询字符串入口并在列表中搜索这些选项:
current_option = request.GET.get('option', options[0])
if not current_option in options: current_option = options[0]
Run Code Online (Sandbox Code Playgroud)
如果未提供"选项",则默认为第一个可用选项.
但现在我想知道另一种选择是什么.如果"option one"是输入,我想要"option two".例如,如果仅"option one"在options列表中,我希望返回False.
我知道我可以遍历列表,但感觉应该有更好的方法来选择其他值.
假设我有一个Person模型:
class Person(models.Model):
name = models.CharField(max_length=50)
email = models.EmailField()
telephone = models.CharField(max_length=50)
Run Code Online (Sandbox Code Playgroud)
对于每个人,我想确保有联系信息.我不需要电子邮件和电话(虽然两者都可以)但我需要确保至少提供一个.
我知道我可以在表格中检查这些东西,但有没有办法在模型/数据库级别这样做以节省重复自己?
我一直在Django CMS安装中开发一些应用程序,并发现它可以很好地缓存我的订单.这可能不是生产中的问题,但在我测试布局时,不得不等待10分钟(或重新启动内存缓存)变得非常无聊.
我可以在开发设置中全局禁用Django CMS的缓存吗?
我有一个内部构造和使用SqlConnection类的第三方库.我可以从班级继承,但它有很多重载,到目前为止我一直找不到合适的.我想要的是使用正在使用的连接字符串的参数.
有没有办法让我在.NET库核心本身设置一个断点?特别是在SqlConnection类的构造函数中,以便我可以查看堆栈跟踪并查看它实际构建的位置?
除此之外,还有其他方法可以做到这一点吗?
具体来说,我想要做的是使用Application Name参数,以便在查看连接时更容易在服务器上识别我们的应用程序.
编辑:嗯,似乎我需要更多的帮助.我想我已经启用了与符号服务器支持相关的所有内容,并且我注意到我配置的目录已经填满了包含.pdb文件的目录.但是,我无法获得SqlConnection类的实际源代码.
是否有一些明确的指导如何成功地做到这一点?
微软已经选择不发布64位版本的Jet,这是他们用于Access的数据库驱动程序.有谁知道一个好的选择?
以下是Jet支持的具体功能:
备选方案我认为我觉得不行(虽然我的理解可能不正确):
我正在尝试从一个可以匹配三种模式之一的字符串中提取数据集.我有一个已编译的正则表达列表.我想通过他们(按顺序)和第一场比赛.
regexes = [
compiled_regex_1,
compiled_regex_2,
compiled_regex_3,
]
m = None
for reg in regexes:
m = reg.match(name)
if m: break
if not m:
print 'ARGL NOTHING MATCHES THIS!!!'
Run Code Online (Sandbox Code Playgroud)
这应该工作(尚未测试),但它非常难看.有没有更好的方法来煮沸一个循环,当它成功时会中断,或者当它没有时会爆炸?
可能有一些re我不知道的特定内容,允许您测试多个模式.
这是我的解析器配置的一个小节
parser.add_argument(
'infile', help="The file to be imported",
type=argparse.FileType('r'), default=sys.stdin
)
parser.add_argument(
'--carpark', nargs='+', dest='CarparkID', type=int, default=[],
help="One or many carpark IDs"
)
Run Code Online (Sandbox Code Playgroud)
然而,这个--carpark论点似乎太贪婪了,吃掉它后面的任何东西:
$ mycommand --carpark 17 ~/path-to-file
mycommand: error: argument --carpark: invalid int value: '/home/oli/path-to-file'
Run Code Online (Sandbox Code Playgroud)
有什么好的方法可以解决这样的问题?我需要将整数 ID 列表传递到命令中,但还有一个位置文件(也可以是标准输入)。
是否有——例如——一个非贪婪的nargs选项,只会解析尽可能多的有意义的内容?
从表面上看,这似乎是一个奇怪的要求,但我需要一个逗号分隔的模型相关项目串.从任何教程中获取作者/书籍模型示例,这是我目前正在做的事情:
authors = Authors.objects.all().prefetch_related('books')
for author in authors:
author.book_titles = ', '.join([book.title for book in author.books.all()])
Run Code Online (Sandbox Code Playgroud)
它并不重,但感觉多余.就像数据库可以做到的那样.在一个理想的世界里,我觉得我应该能够用这些奇特的新数据库功能之一来注释它 .这是一个幻想的例子,使用一个名为的伪造函数Joiner(..):
Authors.objects.annotate(book_titles=Joiner('books__title', separator=', ')
Run Code Online (Sandbox Code Playgroud)
那可能吗?如果是这样,怎么样?
我Booking在Django中有一个模型,它的ID是idDjango创建的内置列.以下是它在Postgres中查看数据库级别的方式:
integer not null default nextval('bookings_booking_id_seq'::regclass)
Run Code Online (Sandbox Code Playgroud)
客户今天已经打电话,担心这些数字似乎是连续的,但并不总是连续的.例如,序列如下:
..2, ..3, ..4, ..6, ..8, ..9
Run Code Online (Sandbox Code Playgroud)
他们担心系统正在丢弃或删除预订.在哪里..5和..7?我们[实际上]记录了可以删除预订的所有内容,因此我非常有信心这不是系统问题.程序员的直觉也告诉我不要期望Auto-ID的连续性,但单凭直觉对于向客户解释是不够的.
是否存在技术原因Postgres在分配这些ID时会跳过数字?
django ×4
python ×3
.net ×1
64-bit ×1
algorithm ×1
argparse ×1
breakpoints ×1
django-cms ×1
list ×1
ms-access ×1
postgresql ×1
regex ×1
runtime ×1
sorting ×1