以下是标签制作对我有用的方法:
In [84]: a="string"
In [85]: b = ["str", "ing"]
字符串的标签完成工作在这里:
In [86]: a.
a.capitalize a.decode a.expandtabs a.index a.isdigit a.istitle a.ljust a.partition a.rindex a.rsplit a.splitlines a.swapcase a.upper
a.center a.encode a.find a.isalnum a.islower a.isupper a.lower a.replace a.rjust a.rstrip a.startswith a.title a.zfill
a.count a.endswith a.format a.isalpha a.isspace a.join a.lstrip a.rfind a.rpartition a.split a.strip a.translate
列表的标签完成工作在这里:
In [86]: b.
b.append b.count b.extend b.index b.insert b.pop b.remove b.reverse b.sort
字符串的标签完成在这里不起作用:
In [87]: b[0].
一种可能的解决方法:
In [88]: c = b[0]
In [89]: c.
c.capitalize c.decode c.expandtabs c.index c.isdigit c.istitle c.ljust c.partition c.rindex c.rsplit c.splitlines c.swapcase c.upper
c.center c.encode c.find c.isalnum c.islower c.isupper c.lower c.replace c.rjust c.rstrip c.startswith c.title c.zfill
c.count c.endswith c.format c.isalpha c.isspace c.join c.lstrip c.rfind c.rpartition c.split c.strip c.translate
是否可以在没有提及变通方法的情况下使用完成?我在ipdb中遇到类似的行为,是否有可能解决此问题?我使用ipythoon v3.1.0和ipdb v 0.8。感谢
答案 0 :(得分:5)
创建ipython个人资料:
ipython profile create testing
ipython_config.py 中的取消注释此行
# Activate greedy completion
#
# This will enable completion on elements of lists, results of function calls,
# etc., but can be unsafe because the code is actually evaluated on TAB.
c.IPCompleter.greedy = True
使用此配置文件加载IPython:
ipython notebook --profile=testing
这为列表成员和字典键和值提供了TAB完成。
一种快速的替代方法是使用dir()方法:
dir(b[0])
#returns:
['__add__', '__class__', '__contains__', '__delattr__', '__doc__', '__eq__', '__format__', '__ge__', '__getattribute__', '__getitem__', '__getnewargs__', '__getslice__', '__gt__', '__hash__', '__init__', '__le__', '__len__', '__lt__', '__mod__', '__mul__', '__ne__', '__new__', '__reduce__', '__reduce_ex__', '__repr__', '__rmod__', '__rmul__', '__setattr__', '__sizeof__', '__str__', '__subclasshook__', '_formatter_field_name_split', '_formatter_parser', 'capitalize', 'center', 'count', 'decode', 'encode', 'endswith', 'expandtabs', 'find', 'format', 'index', 'isalnum', 'isalpha', 'isdigit', 'islower', 'isspace', 'istitle', 'isupper', 'join', 'ljust', 'lower', 'lstrip', 'partition', 'replace', 'rfind', 'rindex', 'rjust', 'rpartition', 'rsplit', 'rstrip', 'split', 'splitlines', 'startswith', 'strip', 'swapcase', 'title', 'translate', 'upper', 'zfill']
另一种方法是在PTVS中使用Python或IPython交互式控制台或常规编辑器,它能够对列表元素进行完成(intellisense)。