判断质数

  1. num = int(input('请输入数字:'))
  2. startnum = 2
  3. endnum = num - 1
  4. for i in range(startnum, endnum):
  5. if num%i == 0:
  6. print('非质数')
  7. break
  8. else:
  9. print('质数')

九九乘法表

  1. count = 1
  2. for i in range(1,10):
  3. for j in range(1,i+1):
  4. print(str(j)+"x"+str(i)+"="+str(i*j),end='')
  5. if i==j:
  6. print('\n')
  7. # 列表解析式方式
  8. print('\n'.join(["".join(["{}*{}={:<4}".format(j, i, i * j) for i in range(1, j + 1)]) for j in range(1, 10)]))
  9. [print('{}*{}={:<4}{}'.format(j, i, i * j, '\n' if i == j else ''), end='') for i in range(1, 10) for j in range(1, i + 1)]

斐波那契数列

  1. # for循环迭代
  2. i = 0
  3. pre = 0
  4. nxt = 1
  5. print(pre)
  6. print(nxt)
  7. while i < 10:
  8. count = pre + nxt
  9. pre, nxt = nxt, pre + nxt
  10. i += 1
  11. print(nxt)
  12. # 递归方法
  13. i = 0
  14. pre = 0
  15. nxt = 1
  16. print(pre)
  17. print(nxt)
  18. def fib(n, pre=0, nxt=1):
  19. pre, nxt = nxt, pre + nxt
  20. print(nxt)
  21. if n == 2:
  22. return
  23. fib(n - 1, pre, nxt)
  24. fib(10)

求阶乘

  1. # 循环方式
  2. # 获取用户输入的数字
  3. num = int(input("请输入一个数字: "))
  4. factorial = 1
  5. # 查看数字是负数,0 或 正数
  6. if num < 0:
  7. print("负数没有阶乘")
  8. elif num == 0:
  9. print("0 的阶乘为 1")
  10. else:
  11. for i in range(1,num + 1):
  12. factorial *= i
  13. print("%d 的阶乘为 %d" %(num,factorial))
  14. # 递归方式
  15. def factorial(num):
  16. if num == 1:
  17. return 1
  18. else:
  19. return num * factorial(num-1)
  20. print(factorial(10))

杨辉三角

  1. # -*- coding: utf-8 -*-
  2. # @Time : 2019/7/12 16:11
  3. # @File : testPython.py
  4. __author__ = 'liangliang.yu@onebank.com.cn'
  5. all = []
  6. n = 100
  7. for i in range(n):
  8. row = [1]*(i+1) # 开辟内存空间,全部补1,后续判断修改列表中内容
  9. all.append(row)
  10. # n=3才会进入下面循环
  11. for j in range(1, i//2+1): # 根据杨辉三角规律缩小取值范围为一半,后面根据奇偶判断补充中点右侧一半
  12. val = all[i-1][j-1] + all[i-1][j] # 根据上一行内容计算当前行的值
  13. row[j] = val
  14. if j != i-j: # 判断奇偶,奇数个数的中点跳过
  15. row[-j-1] = val
  16. print(row)

使用列表求矩阵倒置

  1. # 方法一:
  2. m = [[1, 2], [3, 4], [5, 6]]
  3. matrix = [[] for _ in m[0]]
  4. for i in m:
  5. for j in range(len(i)):
  6. matrix[j].append(i[j])
  7. print(matrix)
  8. # 方法二
  9. matrix = [[1, 2], [3, 4], [5, 6]]
  10. new_matrix = []
  11. for i in range(len(matrix[0])):
  12. col = []
  13. for j in range(len(matrix)):
  14. col.append(matrix[j][i])
  15. new_matrix.append(col)
  16. print(new_matrix)