我对这一切仍然是陌生的,在我学习的过程中,我倾向于在终端使用dir()花费很多时间。但是,我尝试了100倍的方法来使其显示groups()函数或正则表达式的任何类似内容。
关于匹配对象的方法和属性的完整列表,我不知道如何在屏幕上打印这些方法和属性的目录。
我正在学习一门课程,您基本上是作为新手学习编程的。我喜欢按照教程和程序进行操作,然后尝试从内存中再次对其进行编程,然后使用dir()和help()激发我的内存并使我前进。但是我对对象以及如何显示可用于对象的一般方法了解不多。
感谢您的帮助,我应该在几个小时前问这个问题,而不是反复遍历dir()的兔子洞并尝试找出inspect()。如果我能将自己的方法追溯到方法列表,特别是groups(),我会很高兴的。
这就是给我显示的一切。
+ (void)establishConnectionForExtension:(BOOL)extension {
[Parse initializeWithConfiguration:[ParseClientConfiguration configurationWithBlock:^(id<ParseMutableClientConfiguration> _Nonnull configuration) {
configuration.applicationGroupIdentifier = @"group.de.company.app";
configuration.applicationId = PARSE_ID;
configuration.clientKey = PARSE_KEY;
configuration.localDatastoreEnabled = YES;
configuration.server = @"https://";
if (extension) configuration.containingApplicationBundleIdentifier = @"de.company.app";
}]];
}
答案 0 :(得分:0)
在Python 3.7中,匹配对象是re.Match
的实例,您可以使用dir
来检查其属性和方法:
>>> import re
>>> dir(re.Match)
['__class__', '__copy__', '__deepcopy__', '__delattr__', '__dir__',
'__doc__', '__eq__', '__format__', '__ge__', '__getattribute__',
'__getitem__', '__gt__', '__hash__', '__init__', '__init_subclass__',
'__le__', '__lt__', '__ne__', '__new__', '__reduce__', '__reduce_ex__',
'__repr__', '__setattr__', '__sizeof__', '__str__', '__subclasshook__',
'end', 'endpos', 'expand', 'group', 'groupdict', 'groups', 'lastgroup',
'lastindex', 'pos', 're', 'regs', 'span', 'start', 'string']
然后获取更多信息:
>>> help(re.Match.group)
group(...)
group([group1, ...]) -> str or tuple.
Return subgroup(s) of the match by indices or names.
For 0 returns the entire match.
Match
定义已在3.7版中添加到re
中。参见bpo30397。
您可以创建实际的匹配对象并在其上使用re.Match
,而不是使用dir
。
>>> import re
>>> m = re.match('x', 'x')
>>> dir(m)
['__class__', '__copy__', '__deepcopy__', '__delattr__', '__dir__',
'__doc__', '__eq__', '__format__', '__ge__', '__getattribute__',
'__getitem__', '__gt__', '__hash__', '__init__', '__init_subclass__',
'__le__', '__lt__', '__ne__', '__new__', '__reduce__', '__reduce_ex__',
'__repr__', '__setattr__', '__sizeof__', '__str__', '__subclasshook__',
'end', 'endpos', 'expand', 'group', 'groupdict', 'groups', 'lastgroup',
'lastindex', 'pos', 're', 'regs', 'span', 'start', 'string']
>>> help(m.group)
... etc.
您可以看到列表中都包含group
和groups
。
答案 1 :(得分:-1)
>>> import re
>>> match = re.search('l', 'Hello world')
>>> match
<re.Match object; span=(2, 3), match='l'>
>>> dir(match)
['__class__', '__copy__', '__deepcopy__', '__delattr__', '__dir__',
'__doc__', '__eq__', '__format__', '__ge__', '__getattribute__',
'__getitem__', '__gt__', '__hash__', '__init__', '__init_subclass__',
'__le__', '__lt__', '__ne__', '__new__', '__reduce__',
'__reduce_ex__', '__repr__', '__setattr__', '__sizeof__', '__str__',
'__subclasshook__', 'end', 'endpos', 'expand', 'group', 'groupdict',
'groups', 'lastgroup', 'lastindex', 'pos', 're', 'regs', 'span',
'start', 'string']
>>> match.groups()
()
>>> match = re.search('(l)', 'Hello world')
>>> match.groups()
('l',)