为什么内联块列表项中有空格?无论我如何将我的列表项目放入菜单,我总是得到空格.
li {
border: 1px solid black;
display: inline-block;
height: 25px;
list-style-type: none;
text-align: center;
width: 50px;
}
ul {
padding: 0;
}Run Code Online (Sandbox Code Playgroud)
<ul>
<li>One</li>
<li>Two</li>
<li>Three</li>
</ul>Run Code Online (Sandbox Code Playgroud)
我想用符合W3C标准的CSS来定位IE7和IE8.有时为一个版本修复CSS并不能解决另一个版本.我怎样才能做到这一点?
我可以想到的Python itertools.repeat()类的每一个用途,我可以想到另一个同样(可能更多)可接受的解决方案来实现相同的效果.例如:
>>> [i for i in itertools.repeat('example', 5)]
['example', 'example', 'example', 'example', 'example']
>>> ['example'] * 5
['example', 'example', 'example', 'example', 'example']
>>> list(map(str.upper, itertools.repeat('example', 5)))
['EXAMPLE', 'EXAMPLE', 'EXAMPLE', 'EXAMPLE', 'EXAMPLE']
>>> ['example'.upper()] * 5
['EXAMPLE', 'EXAMPLE', 'EXAMPLE', 'EXAMPLE', 'EXAMPLE']
Run Code Online (Sandbox Code Playgroud)
在任何情况下,它是最合适的解决方案吗?如果是这样,在什么情况下呢?
我正在创建一个严重依赖正则表达式的类.
让我们说我的课看起来像这样:
class Example:
def __init__(self, regex):
self.regex = regex
def __repr__(self):
return 'Example({})'.format(repr(self.regex.pattern))
Run Code Online (Sandbox Code Playgroud)
让我们说我像这样使用它:
import re
example = Example(re.compile(r'\d+'))
Run Code Online (Sandbox Code Playgroud)
如果我这样做repr(example),我会'Example('\\\\d+')',但我想要'Example(r'\\d+')'.考虑到打印时的额外反斜杠,它显示正确.我想我可以实现它返回"r'{}'".format(regex.pattern),但这并不适合我.万一Python软件基金会有一天会改变指定原始字符串文字的方式,我的代码就不会反映出来.不过,这是假设的.我主要担心的是这是否一直有效.不过,我无法想到一个优势的边缘情况.有更正式的方法吗?
编辑:格式规范迷你语言,printf样式字符串格式指南或string模块似乎没有出现任何内容.
这些是Python异常的属性,但是我无法绕过它们.Python的文档似乎相当安静.我看了一下文档,但我很困惑.那么,两者之间有什么区别?它们是如何使用的?
编辑:就此而言__traceback__,如果有的话,它们是如何相关的?
编辑3:我想我只是不明白__cause__.我终于明白了__traceback__和__context__.为什么不attribute_error.__cause__参考AttributeError()?
try:
raise NameError() from OSError
except NameError as name_error:
print('name_error.__cause__: %s' % repr(name_error.__cause__))
print('name_error.__context__: %s' % repr(name_error.__context__))
print('name_error.__traceback__: %s' % repr(name_error.__traceback__))
try:
raise AttributeError()
except AttributeError as attribute_error:
print('attribute_error.__cause__: %s' % repr(attribute_error.__cause__))
print('attribute_error.__context__: %s' % repr(attribute_error.__context__))
print('attribute_error.__traceback__: %s' % repr(attribute_error.__traceback__))
raise attribute_error from IndexError
Run Code Online (Sandbox Code Playgroud)
这输出
name_error.__cause__: OSError()
name_error.__context__: None
name_error.__traceback__: <traceback object at 0x000000000346CAC8>
attribute_error.__cause__: None
attribute_error.__context__: NameError()
attribute_error.__traceback__: <traceback object at 0x000000000346CA88> …Run Code Online (Sandbox Code Playgroud) 我需要获取GitHub仓库中托管的文件的内容.我更愿意获得带有元数据的JSON响应.我用cURL尝试了很多网址,只得到了响应{"message":"Not Found"}.我只需要URL结构.如果重要,那就是来自GitHub上的一个组织.这是我认为应该工作但不是:
http://api.github.com/repos/<organization>/<repository>/git/branches/<branch>/<file>
Run Code Online (Sandbox Code Playgroud) 我有一个程序在目录中搜索符合特定条件的文件.这个搜索过程需要很长时间,所以我必须异步调用它.当搜索算法找到文件时,它会触发一个事件.我的MainWindow实例侦听此事件并需要更新GUI.如何将这些"添加"文件绑定到ListView?我想我可以使用一个ObservableCollection<FileInfo>实例,但我无法弄清楚如何绑定它.
我已经删除了所有不相关的控件和代码.这是两个相关文件.
MainWindow.xaml:
<Window x:Class="Example.MainWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Title="CR Search" Height="395" Width="525">
<Grid>
<ListView x:Name="Results">
<ListView.View>
<GridView>
<GridViewColumn Header="Filename"/>
<GridViewColumn Header="Directory"/>
</GridView>
</ListView.View>
</ListView>
</Grid>
</Window>
Run Code Online (Sandbox Code Playgroud)
MainWindow.xaml.cs:
using System.IO;
using System.Threading.Tasks;
public partial class MainWindow
{
private SearchLogic _backgroundSearch;
private async void Search(object sender, RoutedEventArgs e)
{
// TODO: clear Results
_backgroundSearch = new SearchLogic("", new DirectoryInfo("C:\"));
_backgroundSearch.FileAdded += FileAdded;
await Task.Run(new Action(_backgroundSearch.Search));
}
private void FileAdded(object sender, FileAddedEventArgs eventArgs)
{
// TODO: …Run Code Online (Sandbox Code Playgroud) TL; DR:如何计算一个语法产品的模型,以便为同一个左手边存在不确定数量的产品?
我正在研究一个关于形式语言理论的项目,我正在尝试编写一个用于构建常规语法对象的类,这些对象可以传递给有限状态机.我天真的尝试是创建一个API,为每个允许的输入添加一个生产.我的尝试的精简版本如下(基于正式语法的正式定义G = (N, ?, P, S)):
class ContextFreeGrammar:
def __init__(self, variables, alphabet, production_rules, start_variable):
self.variables = variables
self.alphabet = alphabet
self.production_rules = production_rules
self.start_variable = start_variable
def __repr__(self):
return '{}({}, {}, {}, {})'.format(
self.__class__.__name__,
self.variables,
self.alphabet,
self.production_rules,
self.start_variable
)
class RegularGrammar(ContextFreeGrammar):
_regular_expression_grammar = None # TODO
@classmethod
def from_regular_expression(cls, regular_expression):
raise NotImplementedError()
Run Code Online (Sandbox Code Playgroud)
我还没有达到实际编写有限状态自动机或下推自动机的程度.
正则表达式的语法是无上下文的,所以我在下面的WSN中包含了我的定义:
syntax = expression .
expression = term "|" expression .
expression = term .
term = factor repetition term .
term = …Run Code Online (Sandbox Code Playgroud)