a = 37 flag = True for i inrange(2,a): # 注意range 是左闭右开 if a % i == 0: flag = False break# 一旦判断成功后,后面就没必要继续了 if flag: print('a不是素数') else: print('a是素数')
# 判断素数函数 defprime(x): flag = True for i inrange(2, x): if x % i == 0: flag = False break return flag
# 闭区间 a = 10# 左端点 b = 20# 右端点 num_list = [] for i inrange(a,b+1): if prime(i): num_list.append(i)
print(num_list)
11、组合数字
有四个数字:1、2、3、4,能组成多少个互不相同且无重复数字的三位数?各是多少?
# 方法一 str1 = '1234' for i in str1: for j in str1:
for k in str1: if i == j or i == k or j == k: continue print(i+j+k)
# 方法二 for i inrange(1,5): for j inrange(1,5): for k inrange(1,5): ifnot(i == j or i == k or j == k): print(f'{i}{j}{k}')
12、打印乘法口诀表
for i inrange(1,10): for j inrange(1,i+1): print(f'\t{j} * {i} = {i * j}',end=' ') print()
13、水仙花数
水仙花数:是一个三位数,各位数字立方和等于该数字本身。
import math # 水仙花数:是一个三位数,各位数字立方和等于该数字本身。
num_list = [] for i inrange(100,1000): hundred = i // 100 ten = i // 10 % 10 piece = i % 10 if (math.pow(hundred,3) + math.pow(ten,3)+ math.pow(piece,3)) == i: num_list.append(i)
print(num_list)
14、反向输出四位数
编写程序,输入一个四位整数,反对输出对应四位数
# 编写程序,输入一个四位整数,反对输出对应四位数
st = input('请输入一个四位数') st = st[::-1] print(int(st))
15、判断字母
编写程序,输入字符,判断是否为字母
# 编写程序,输入字符,判断是否为字母
a = input('请输入字符: ') result = a.isalpha() # 判断字母 if result: print(f'{a}是字母') else: print(f'{a}不是字母')
16、判断三角形
编写程序,输入三组数据,判断能否构成三角形的三条边
a, b, c = [4, 5, 6]
if a <= 0or b <= 0or c <= 0: print('输入的数据不合法')
if a + b < c or a + c < b or b + c < a: print('不构成三角形') else: print('构成三角形')
# 方法一 for i in string: if'a' <= i <= 'z'or'A' <= i <= 'Z': char += 1 elif i == ' ': space += 1 elif'0' <= i <= '9': number += 1 else: other += 1 # 方法二: for i in string: if i.isalpha(): # 判断字符串 char += 1 elif i.isdigit(): # 判断数字 number += 1 elif i.isspace(): # 判断空格 space += 1 else: other += 1 print(f'英文字母有{char}个,数字有{number}个,空格有{space}个,其他字符有{other}个。')
deffunc(n): if n == 1: return10 else: return func(n - 1) + 2 print(func(5))
31、判断回文数
输入一个数,判断它是不是回文数。12321是回文数,个位与万位相同,十位与千位相同。
number = '12321'
# 方法一 if number[0] == number[-1] and number[1] == number[-2]: print(True) else: print(False)
# 方法二 number = int(number) w = number // 10000 q = number // 1000 % 10 ten = number % 100 // 10 g = number % 10 if q == ten and w == g: print('是回文数') else: print('不是回文数')
# 方法三 a = '12321' b = a[::-1] # 字符串反转 if a == b: print('是回文数') else: print('不是回文数')
if list1[0] < list1[-2]: list1.append(n) list1.sort() else: list1.append(n) list1.sort(reverse=True)
print(list1)
37、变量值互换
a = 5 b = 10
# 方法一 a,b = b,a
# 方法二 temp = a a = b b = temp
38、产生随机数
生成随机数
import random
a = random.random() # [0,1) float b = random.randint(1,10) # [1,10] int c = random.randrange(1,10,3) # 比 randint 多了一个步长 print(a,b,c)
39、lambda表达式
使用lambda来创建匿名函数
fun = lambda x, y: x ** y
print(fun(2, 4))
40、温度转换
输入摄氏度,将其转为华氏度
输入华氏度,将其转为摄氏度。
华氏温度与摄氏温度转换公式为:
华氏温度=摄氏温度x1.8+32。
a = input('摄氏度请按1,华氏度请按2: ')
if a == '1': b = float(input('请输入摄氏度: ')) result = b * 1.8 + 32 print(f'你输入的是摄氏度{b}, 转换为华氏度是{result}') if a == '2': b = float(input('请输入华氏度: ')) result = (b - 32) / 1.8 print(f'你输入的是华氏度{b}, 转换为摄氏度是{result}')
for i inrange(10): a.append([]) for j inrange(10): a[i].append(0)
for i inrange(10): a[i][0] = 1 a[i][i] = 1
for i inrange(2,10): for j inrange(1,i): a[i][j] = a[i-1][j] + a[i-1][j-1]
for i inrange(10): print() for j inrange(i+1): print(a[i][j], end=' ')
47、查找字符串
a = 'Hello World!' b = 'World' print(a.find(b))
48、猜数字游戏
import random
target = random.randint(0,99) times = 7 print('猜数字游戏开始,请猜一百以内的整数~') while times != 0: num = int(input('请输入你要猜的数字: \n')) times -= 1 if num < target: print('猜小了') elif num > target: print('猜大了') else: print(f'恭喜你才对了,答案是{target}')