所以我使用TextWrangler4.5.3并主要使用Python进行脚本编写.当我编写Python时,我经常喜欢发表类似的评论:# BEGINS foo然后# ENDS foo 我这样做,以后编辑和理解快速而清晰.最后说到这一点:我想告诉TextWrangler让" # BEGINS"变成一个不同的人,比如说..绿色.
非常感谢任何洞察力= P
建立:
问题是经典概率问题的复杂形式:
70 colored balls are placed in an urn, 10 for each of the seven rainbow colors.
What is the expected number of distinct colors in 20 randomly picked balls?
Run Code Online (Sandbox Code Playgroud)
我的解决方案是python的itertools库:
combos = itertools.combinations(urn, 20),
print sum([1 for x in combos])
(其中urn是urn中70个球的列表).
我可以将迭代器解压缩到combinations(urn, 8)我的计算机无法处理的过去的长度.
注意:我知道这不会给我答案,这只是我脚本中的路障,换句话说,如果这有效,我的脚本就可以了.
问题:如果没有世界上最快的超级计算机,我怎样才能准确找到预期的颜色?我的计算方式是否可行?
我有点不确定如何在课堂外使用自我.python中的很多内置方法都使用self作为参数,你不需要声明类; 例如,您可以使用该string.upper()命令来大写每个字母,而无需告诉python使用哪个类.如果我没有很好地解释自己,我已经包含了我的代码如下所示.
def ispalendrome(self): return self == self[::-1]
largestProd = 999**2
largest5Palendromes = []
while len(largest5Palendromes) <= 5:
if str(largestProd).ispalendrome(): largest5Palendromes.append(largestProd)
largestProd -= 1
print largest5Palendromes
Run Code Online (Sandbox Code Playgroud)
注意:我了解还有其他方法可以完成此任务,但我想知道这是否可行.TYVM.