python基础必练题!!
水仙花数
水仙花数
info = 3
while info:
# 用户输入数字
try:
print(f"请输入数字,您有{info}次机会!!")
num = int(input("请输入100-999的数字:"))
if num<100 or num>999:
info -= 1
print(f"请输入合法数字!!!您还有{info}次机会!!")
continue
b = num //100 # 取百位
s = num //10%10 # 取十位
g = num % 10 # 取个位
if b**3+s**3+g**3 == num:
print(f"{num}:这个数是水仙花数")
break
else:
print(f"{num}:这个数不是水仙花数")
info -= 1
except:
print(f"请输入数字!!!您还有{info}次机会!!")
info -= 1
插入排序
插入排序
# 定义列表
nums = [87,38,77,2,33,98,73,22,12]
for i in range(len(nums)):
# 判断 <右边的元素> 是否小于 <左边元素>
# 如果 小于,则将两个元素交换位置,就变成“小在左,大在右了”
while nums[i] < nums[i-1] and i>=1:
nums[i],nums[i-1] = nums[i-1],nums[i]
i -= 1
冒泡排序
冒泡排序
# 定义列表
nums = [87,99,17,2,33,68,73,22,12]
# 遍历的次数是列表长度 减一
# 相当于要冒泡几轮
for i in range(len(nums)-1):
# 每轮冒泡的次数,
# -i 是因为 :上轮将大的数已经排在后面,所以后面的就不再参与
for j in range(len(nums)-1-i):
if nums[j] > nums[j+1] :
# 比较左边 ‘nums[j]’ 和右边 'nums[j+1]' 的元素 换位
nums[j],nums[j+1] = nums[j+1],nums[j]
print(nums)
百鸡百钱
百鸡百钱
题干:公5,母3,小1/3
公鸡x 母鸡y 小鸡z 加起来要 100 只
5x+3y+z/3=100
---------------------------------------
count = 0
for x in range(1,20):
# 因为公鸡数量不会超过20
for y in range(1,33):
# 母鸡数量不超过33
# 小鸡的数量
z = 100 - x - y
if z != 0 and 5*x+3*y+z/3 == 100:
count += 1 # 每次方法记录加一
print(f"第{count}种方法:{x}只公鸡,{y}只母鸡,{z}只小鸡")
最小公倍数
最小公倍数
num1 = int(input("请输入数字1:"))
num2 = int(input("请输入数字2:"))
if num1 < num2 :
num1,num2 = num2,num1
else:
num1,num2 = num1,num2
for i in range(num1,num1*num2+1):
if i%num1==0 and i%num2==0:
print(f"{i}是{num1}和{num2}的最小公倍数")
二分查找
首要条件:被查询的序列,必须是有序的。
target : 目标
target = n
left = 0 # 左下标/索引
right = len(lis)-1 # 右下标/索引
while left <= right:
# 找到列表中间索引
mid = (left+right)//2
if lis[mid] > target:
# 如果中间值大于目标值,说明目标值在中间值左边
# 所以需要修改右下标。
right = mid-1
elif lis[mid] < target:
# 如果中间值小于目标值,说明目标值在中间值右边
# 所以需要修改左下标。
left = mid + 1
else:
print(f"该数字的下标为{mid}")
break
else:
print("该目标不在序列中……")
猜年龄-妹妹几岁了
小明带两个妹妹参加元宵灯会。别人问她们多大了,他们调皮地说:“我们两个的年龄之积是年龄之和的六倍。”小明又补充说:“他们可不是双胞胎,年龄差也不超过8岁。”请写出,较小妹妹的年龄?
实现思路:
1、两个妹妹不是双胞胎,年纪肯定不一样
2、年龄积是年龄和的六倍
for i in range(1,100): # 假设姐姐的年龄
for j in range(1,i): # 假设妹妹的年龄
if i*j==6*(i+j) and i-j<8: # 姐妹年龄的条件
print(f"姐姐{i}岁了,妹妹{j}岁了")
求好字符串?
题干需求:
长度为三且各字符不同的子字符串
如果一个字符串不含有任何重复字符,我们称这个字符串为好字符串。
给你-一个字符串s, 请你返回s中长度为3的好子字符串的数量。
注意,如果相同的好子字符串出现多次,每一次都应该被记入答案之中。
子字符串是一个字符串中连续的字符序列。
str_i = input("请输入3位以上的字符:")
counts = 0
for i in range(len(str_i)-2): # 以防下方索引时超出范围
if str_i[i] != str_i[i+1] and str_i[i] != str_i[i+2] and str_i[i+1] != str_i[i+2]:
counts += 1
print(f"好字符有:{str_i[i]}{str_i[i+1]}{str_i[i+2]}")
print(f"一共有{counts}个好字符")
python基础必练题!!的更多相关文章
- python基础之逻辑题(3)
Python基础之逻辑题(3) 1.编写一个函数实现将IP地址转换成一个整数 2.求结果:---lambda 3.求a的结果 4.求下面nums的输出 5.求下面片段的输出 6.写出程序的结果:--- ...
- python基础之逻辑题(2)
python基础之逻辑题(2) 1.若k为整数,下列while循环执行的次数为? 2.请输出正确结果-----numbers? 3.求结果-----math? 4.求结果-----sum? 5.输 ...
- python基础之逻辑题(1)
python基础之逻辑题(1) 1.用一行代码实现数值交换? 2.求结果--fromkeys? 3.1,2,3,4,5能组成多少个互不相同且无重复的三位数? 4.有两个字符串列表a和b,每个字符串是逗 ...
- 面试题之第一部分(Python基础篇) 80题
第一部分(python基础篇)80题 为什么学习Python?==*== # 1. python应用于很多领域,比如后端,前端,爬虫,机器学习(人工智能)等方面,几乎能涵盖各个开发语言的领域,同时它相 ...
- python面试题解析(python基础篇80题)
1. 答:出于编程的喜爱,以及行业本身的前瞻性,创造性,优越性,越是综合的科目越能检验一个人的能力,喜欢这种有挑战的事情. 2. 答:跟随老师学习,以及自己查询资料,结合实战,进行输入输出以及 ...
- python(9)- python基础知识刷题
1. 执行 Python 脚本的两种方式 交互方式:命令行 Windows操作系统下,快捷键cmd,输入“python”启动交互式python解释器. 文件方式:python文件 2. 简述位.字 ...
- python基础面试常见题
1.为什么学习Python? Python是目前市面上,我个人认为是最简洁.最优雅.最有前途.最全能的编程语言,没有之一. 2.通过什么途径学习的Python? 通过自学,包括网上查看一些视频,购买一 ...
- python基础易错题
1.以下代码输入什么: class Person: a = 1 def __init__(self): pass def getAge(self): print(__name__) p = Perso ...
- python基础技巧综合训练题2
1,判断一个字符串中的每一个字母是否都在另一个字符串中,可以利用集合的特性来解,集合的元素如果存在,再次更新(update) 是添加不进集合的,那么集合的长度还是跟原来一样,如果添加进去,集合长度就会 ...
- python基础技巧综合训练题1
1,大小写翻转 >>> str='hello,GhostWU' >>> str.swapcase() 'HELLO,gHOSTwu' 2,从一串字符串中,提取纯数字 ...
随机推荐
- 任务调度器Azkaban(Azkaban环境部署)
文章链接:https://www.cnblogs.com/liugp/p/16273966.html
- postman获取时间戳并自动计算token
工作中时常要测试接口,公共请求参数包括id, timestamp, token, token = MD5(id + key + timestamp)并转大写. 每次用外部工具去获取时间戳并计算toke ...
- 天线增益是什么意思?DBI越大越好吗?
作者: 技象物联网/ 行业百科 / 无线通信, 通信系统 / 2023年6月23日 11:58:21 天线增益是指天线在某个方向上相对于一个理想点源天线所辐射的功率密度的增益.换句话说,天线增益是天线 ...
- Linux - 关于yum源 file & ftp & http 的三种配置方式
一.环境准备 1.两台Centos服务器:node1.node2 2.配置ip:node1(192.168.2.111).node2(192.168.2.112) 3.关闭防火墙 systemctl ...
- Java进阶 - [1-5] 集合容器
ArrayList add 1.先确认是否需要扩容,如果需要,则进行扩容操作ensureExplicitCapacity. 2.进行赋值 elementData[size++] = e; 扩容 1.如 ...
- Java 浮点型去除后面多余的零
当我们输出的小数不知道有几位小数,也不知道后面有没有带零,去掉后面多余零可以采用以下方法.在实际使用中,多用于小数转百分数,百分数前面的小数乘以100后转String输出,输出的String很多带零, ...
- python 字典使用
整理很好的文章 文章复制链接: https://mp.weixin.qq.com/s/Aj65A-uuTaARW3vvYTxvzQ 1.检查键是否存在于字典中 def key_in_dict(d, k ...
- Windows编程----CreateProcess函数
CreateProcess函数原型 CreateProcess 函数用于创建一个新进程(子进程)及其主线程,其函数原型如下: BOOL CreateProcess( LPCWSTR lpApplica ...
- Trae 开发工具与使用技巧
大家好,我是 V 哥. 前不久,字节重磅推出 AI 原生 IDE Trae,有了这款工具,程序员的开发效率得到了大大的提升,如何你是程序员,还没有使用起来,那 V 哥建议你即刻起马上安装上,谁用谁知道 ...
- Linux netstat 命令查看80端口状态
Netstat 命令用于显示各种网络相关信息,如网络连接,路由表,接口状态 (Interface Statistics),masquerade 连接,多播成员 (Multicast Membershi ...