1.已知
ABCD * 9 = DCBA;A!=B!=C!=D通过计算机的方法,给我们计算出A = ? B = ? C = ? D = ?
-
#!/usr/bin/env python
-
# -*- coding: utf-8 -*-
-
# @Time : 2017/12/27 10:45
-
# @Author : alvin
-
# @File : demon1.py
-
-
-
class CountNumber(object):
-
'''ABCD * 9 = DCBA
-
通过计算机的方法,给我们计算出A = ? B = ? C = ? D = ?
-
A: 1-9
-
B: 0-9
-
C: 0-9
-
D: 1-9
-
A != B != C !=D
-
'''
-
def __init__(self):
-
print("ABCD * 9 = DCBA; A!=B!=C!=D")
-
def numAbcd(self):
-
for A in range(1, 10):
-
for B in range(0, 10):
-
for C in range(0, 10):
-
for D in range(1, 10):
-
if (A*1000 + B*100 + C*10 + D) * 9 == (D*1000 + C*100 + B*10 + A):
-
print("{0}{1}{2}{3} *9 = {4}{5}{6}{7}".format(A,B,C,D,D,C,B,A))
-
print("A = {0}, B = {1}, C = {2}, D = {3}".format(A,B, C, D))
-
-
-
-
def main():
-
countNumber = CountNumber()
-
countNumber.numAbcd()
-
-
if __name__ == '__main__':
-
main()
执行结果如下:
ABCD * 9 = DCBA; A!=B!=C!=D
1089 *9 = 9801
A = 1, B = 0, C = 8, D = 9
2.使用python 实现打印9宫格 --横,竖,对角的和都是15
-
#!/usr/bin/env python
-
# -*- coding: utf-8 -*-
-
# @Time : 2017/12/27 10:49
-
# @Author : alvin
-
# @File : demon2.py
-
'''九宫格'''
-
-
class NinePaper(object):
-
def __init__(self):
-
print('''
-
_____________
-
|_A_|_B_|_C_|
-
|_D_|_E_|_F_|
-
|_G_|_H_|_I_|
-
A, B, C, D, E, F, G, H, I 必须是1-9数字,且不能重复
-
所有的行,列,对角线的和都为15
-
''')
-
self.numbers = list()
-
for i in range(1, 10):
-
self.numbers.append(i)
-
print("numbers = {0}".format(self.numbers))
-
def run(self):
-
for A in range(1, 10):
-
l1 = list()
-
l1 += self.numbers
-
l1.remove(A)
-
for B in l1:
-
l2 = list()
-
l2 += l1
-
l2.remove(B)
-
for C in l2:
-
l3 = list()
-
l3 += l2
-
l3.remove(C)
-
for D in l3:
-
l4 = list()
-
l4 += l3
-
l4.remove(D)
-
for E in l4:
-
l5 = list()
-
l5 += l4
-
l5.remove(E)
-
for F in l5:
-
l6 = list()
-
l6 += l5
-
l6.remove(F)
-
for G in l6:
-
l7 = list()
-
l7 += l6
-
l7.remove(G)
-
for H in l7:
-
l8 = list()
-
l8 += l7
-
l8.remove(H)
-
for I in l8:
-
if A+B+C == D+E+F == G+H+I == A+D+G == B+E+H == C+F+I == A+E+I == C+E+G == 15:
-
print('''
-
_____________
-
|_{0}_|_{1}_|_{2}_|
-
|_{3}_|_{4}_|_{5}_|
-
|_{6}_|_{7}_|_{8}_|
-
'''.format(A, B, C, D, E, F, G, H, I))
-
-
-
-
-
def main():
-
ninePaper = NinePaper()
-
ninePaper.run()
-
-
if __name__ == '__main__':
-
main()
执行结果如下:
_____________
|_A_|_B_|_C_|
|_D_|_E_|_F_|
|_G_|_H_|_I_|
A, B, C, D, E, F, G, H, I 必须是1-9数字,且不能重复
所有的行,列,对角线的和都为15
numbers = [1, 2, 3, 4, 5, 6, 7, 8, 9]
_____________
|_2_|_7_|_6_|
|_9_|_5_|_1_|
|_4_|_3_|_8_|
_____________
|_2_|_9_|_4_|
|_7_|_5_|_3_|
|_6_|_1_|_8_|
_____________
|_4_|_3_|_8_|
|_9_|_5_|_1_|
|_2_|_7_|_6_|
_____________
|_4_|_9_|_2_|
|_3_|_5_|_7_|
|_8_|_1_|_6_|
_____________
|_6_|_1_|_8_|
|_7_|_5_|_3_|
|_2_|_9_|_4_|
_____________
|_6_|_7_|_2_|
|_1_|_5_|_9_|
|_8_|_3_|_4_|
_____________
|_8_|_1_|_6_|
|_3_|_5_|_7_|
|_4_|_9_|_2_|
_____________
|_8_|_3_|_4_|
|_1_|_5_|_9_|
|_6_|_7_|_2_|
3. 使用python 实现/etc/passwd下的用户UID按照大小排序
-
#!/usr/bin/env python
-
# -*- coding: utf-8 -*-
-
# @Time : 2017/12/27 11:13
-
# @Author : alvin
-
# @File : demon3.py
-
import codecs
-
-
import os
-
-
-
class SortPasswd(object):
-
def __init__(self):
-
self.passwd = "passwd"
-
self.newpasswd = "newPasswd"
-
self.contextList = list()
-
if not os.path.exists(self.passwd):
-
print("please download passwd from linux.")
-
exit(1)
-
print("sort file is :{0}".format(self.passwd))
-
print("sorted file is :{0}".format(self.newpasswd))
-
def getContextList(self):
-
with codecs.open("passwd") as fr:
-
self.contextList += sorted(fr.readlines(), key=lambda line:int(line.split(":")[2]), reverse=False)
-
def writeContextList(self):
-
with codecs.open("new_passwd", "w") as fw:
-
fw.writelines(self.contextList)
-
-
-
-
def main():
-
sortpasswd = SortPasswd()
-
sortpasswd.getContextList()
-
sortpasswd.writeContextList()
-
-
if __name__ == '__main__':
-
main()
-
#!/usr/bin/env python
-
# -*- coding: utf-8 -*-
-
# @Time : 2017/12/27 10:45
-
# @Author : alvin
-
# @File : demon1.py
-
-
-
class CountNumber(object):
-
'''ABCD * 9 = DCBA
-
通过计算机的方法,给我们计算出A = ? B = ? C = ? D = ?
-
A: 1-9
-
B: 0-9
-
C: 0-9
-
D: 1-9
-
A != B != C !=D
-
'''
-
def __init__(self):
-
print("ABCD * 9 = DCBA; A!=B!=C!=D")
-
def numAbcd(self):
-
for A in range(1, 10):
-
for B in range(0, 10):
-
for C in range(0, 10):
-
for D in range(1, 10):
-
if (A*1000 + B*100 + C*10 + D) * 9 == (D*1000 + C*100 + B*10 + A):
-
print("{0}{1}{2}{3} *9 = {4}{5}{6}{7}".format(A,B,C,D,D,C,B,A))
-
print("A = {0}, B = {1}, C = {2}, D = {3}".format(A,B, C, D))
-
-
-
-
def main():
-
countNumber = CountNumber()
-
countNumber.numAbcd()
-
-
if __name__ == '__main__':
-
main()
阅读(1947) | 评论(0) | 转发(0) |