判断质数
num = int(input('请输入数字:'))startnum = 2endnum = num - 1for i in range(startnum, endnum): if num%i == 0: print('非质数') break else: print('质数')
九九乘法表
count = 1for i in range(1,10): for j in range(1,i+1): print(str(j)+"x"+str(i)+"="+str(i*j),end='') if i==j: print('\n')# 列表解析式方式print('\n'.join(["".join(["{}*{}={:<4}".format(j, i, i * j) for i in range(1, j + 1)]) for j in range(1, 10)]))[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)]
斐波那契数列
# for循环迭代i = 0pre = 0nxt = 1print(pre)print(nxt)while i < 10: count = pre + nxt pre, nxt = nxt, pre + nxt i += 1 print(nxt)# 递归方法i = 0pre = 0nxt = 1print(pre)print(nxt)def fib(n, pre=0, nxt=1): pre, nxt = nxt, pre + nxt print(nxt) if n == 2: return fib(n - 1, pre, nxt)fib(10)
求阶乘
# 循环方式# 获取用户输入的数字num = int(input("请输入一个数字: "))factorial = 1# 查看数字是负数,0 或 正数if num < 0: print("负数没有阶乘")elif num == 0: print("0 的阶乘为 1")else: for i in range(1,num + 1): factorial *= i print("%d 的阶乘为 %d" %(num,factorial))# 递归方式 def factorial(num): if num == 1: return 1 else: return num * factorial(num-1)print(factorial(10))
杨辉三角
# -*- coding: utf-8 -*-# @Time : 2019/7/12 16:11# @File : testPython.py__author__ = 'liangliang.yu@onebank.com.cn'all = []n = 100for i in range(n): row = [1]*(i+1) # 开辟内存空间,全部补1,后续判断修改列表中内容 all.append(row) # n=3才会进入下面循环 for j in range(1, i//2+1): # 根据杨辉三角规律缩小取值范围为一半,后面根据奇偶判断补充中点右侧一半 val = all[i-1][j-1] + all[i-1][j] # 根据上一行内容计算当前行的值 row[j] = val if j != i-j: # 判断奇偶,奇数个数的中点跳过 row[-j-1] = val print(row)
使用列表求矩阵倒置
# 方法一:m = [[1, 2], [3, 4], [5, 6]]matrix = [[] for _ in m[0]]for i in m: for j in range(len(i)): matrix[j].append(i[j])print(matrix)# 方法二matrix = [[1, 2], [3, 4], [5, 6]]new_matrix = []for i in range(len(matrix[0])): col = [] for j in range(len(matrix)): col.append(matrix[j][i]) new_matrix.append(col)print(new_matrix)