g-var.com | G-VAR's Blog

Recent Posts

Full Tag Index

Posts in “Checkio”

CheckIO 3 | House Password

Wed, Aug 10, 2016
转载请注明出处! 原文链接:CheckIO 3 | House Password 任务: 斯蒂芬和索菲亚对于一切都使用简单的密码,忘记了安全性。请你帮助尼古拉开发一个密码安全检查模块。如果密码的长度大于或等于10个符号,至少有一个数字,一个大写字母和一个小写字母,该密码将被视为足够强大。密码只包含ASCII拉丁字母或数字。 输入: 密码 (str, unicode)。 输出: 密码的安全与否,作为布尔值(bool),或者任何可以转换和处理为布尔值的数据类型。你会在结果看到转换后的结果(True 或 False)。 Example: checkio(‘A1213pokl’) == False checkio(‘bAse730onE’) == True checkio(‘asasasasasasasaas’) == False checkio(‘QWERTYqwerty’) == False checkio(‘123456123456’) == False checkio(‘QwErTy911poqqqq’) == True 如何使用: 如果你担心你的应用或服务的安全性,您可以检查用户密码的复杂性。你可以使用这些技巧要求你的用户的密码符合多个条件(标点符号或unicode)。 前提:: re.match(”[a-zA-Z0-9]+“, password) 0 < len(password) ≤ 64 答案: def checkio(data): if len(data)>9: if any(i.isupper() for i in data) and any(i.islower() for i in data) and any(i.isdigit() for i in data): return True else: return False else: return False 其它答案:

CheckIO 2 | Median

Wed, Aug 10, 2016
转载请注明出处! 原文链接:CheckIO 2 | Median 任务: 中位数是一个可将数值集合划分为相等的上下两部分的一个数值。如果列表数据的个数是奇数,则列表中间那个数据就是列表数据的中位数;如果列表数据的个数是偶数,则列表中间那2个数据的算术平均值就是列表数据的中位数。在这个任务里,你将得到一个含有自然数的非空数组(X)。你必须把它分成上下两部分,找到中位数。 输入: 一个作为数组的整数(int)列表(list)的。 输出: 数组的中位数(int, float). 范例: checkio([1, 2, 3, 4, 5]) == 3 checkio([3, 1, 2, 5, 3]) == 3 checkio([1, 300, 2, 200, 1]) == 2 checkio([3, 6, 20, 99, 10, 15]) == 12.5 如何使用: 中位数在概率论和统计学中得到应用,它偏态分布中有显著的价值。例如:我们想从一组数据中知道人们的平均财富 – 100人一个月收入100美元,10人一个月收入1,000,000美元。如果我们算平均值,得到的是91000美元。这是一个完全没有向我们展示真实情况的奇怪的值。所以在这种情况下,中位数会给我们更有用的值和较好的描述。 维基百科的文章。 前提: 1 < len(data) ≤ 1000 all(0 ≤ x < 10 ** 6 for x in data) 答案:

CheckIO 1 | Non Unique Element

Tue, Aug 9, 2016
最近在学习Python,听说了一个叫CheckIO的网站(需要翻墙),是通过游戏的方式以Python来解答各种问题,正好可以通过该网站的任务来加深对Python的理解,希望以后能有时间每天做一两道题,在此记录的是不是我的答案,只记录一下比较经典的答案,基于Python 2.7。 转载请注明出处! 原文链接:CheckIO 1 | Non Unique Element 任务: 你将得到一个含有整数(X)的非空列表。在这个任务里,你应该返回在此列表中的非唯一元素的列表。要做到这一点,你需要删除所有独特的元素(这是包含在一个给定的列表只有一次的元素)。解决这个任务时,不能改变列表的顺序。例如:[1,2,3,1,3] 1和3是非唯一元素,结果将是 [1, 3, 1, 3]。 输入: 一个含有整数的列表。 输出: 一个含有不唯一元素的整数列表。 范例: checkio([1, 2, 3, 1, 3]) == [1, 3, 1, 3] checkio([1, 2, 3, 4, 5]) == [] checkio([5, 5, 5, 5, 5]) == [5, 5, 5, 5, 5] checkio([10, 9, 10, 10, 9, 8]) == [10, 9, 10, 10, 9] 如何使用: 这个任务将帮助您了解如何操作数组,这是解决更复杂的任务的基础。这个概念可以很容易地推广到真实世界的任务。例如你需要通过删除低频的元素(噪声)来使统计数据更清楚。 前提: 0 < |X| < 1000