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,从一串字符串中,提取纯数字 ...
随机推荐
- JMeter中使用嵌套变量方法
JMeter中使用嵌套变量方法 在使用JMeter进行接口测试时,经常遇到需要动态生成变量名并引用其值的情况.在JMeter中,嵌套变量的使用可以帮助我们实现这一目标.本文将详细介绍如何在JMeter ...
- centos7关闭不必要的服务和端口
云服务器开启很多不必要的端口,造成安全隐患 TCP 25端口:邮件服务 systemctl stop postfix 53端口 :域名解析服务 systemctl stop rhel-domainna ...
- Spark异常总结
1.Spark读写同一张表报错问题Cannot overwrite a path that is also being read from 问题描述:Spark SQL在执行ORC和Parquet格式 ...
- QT5笔记: 8. QT的全局变量(基本数据类型、函数、宏)
这个头文件中存放着QT类库的一些全局定义,一般Qt类的头文件会包含这个头文件: 基本数据类型 函数 宏 数据类型:保证跨平台时各数据类型长度统一 函数定义(一些数学函数未在QtGlobal中,而是在Q ...
- 小米13Pro一键ROOT秒杀全版本
小米13p专属 通杀全版本 但是必须解开bl锁 小米13pro一键root使用方法: 解锁bl后,不要设置锁屏密码,有的话就取消掉,打开软件,点击安装驱动(管理员) 手机上打开usb调试和usb安装 ...
- Linux - 开启FTP服务
vsftpd 一.Centos6.x配置ftp 1.1.安装OpenSSH-server OpenSSH-server包含了FTP服务,通常,CentOS6.x默认已经安装了OpenSSH-serve ...
- Windows Api如何创建一个快捷方式并且在开始菜单搜索到自己的应用
原文链接:http://cshelloworld.com/home/detail/1804473083243925504 当我们点击win10系统搜索框的时候,输入名称 ,win10会帮助我们匹配到对 ...
- Linux下yum安装mysql 遇到的问题Can't open and lock privilege tables: Table 'mysql.user' doesn't exist 错误
今天在linux下安装mysql时 执行service mysqld start时, mysql总是启动失败 后来查看mysql日志:/var/log/mysqld.log,发现有个Can't ope ...
- go 编译约束//go:build dev //+build
前言 在真实环境中,我们可能需要为不同的编译环境编写不同的 Go 代码,所以需要做构建约束. 比如:syscall.NewLazyDLL("test.dll") 加载 dll 的程 ...
- go 逐行读取文件
前言 文件 I/O,特别是对文件的读写是编程语言中重要的功能.通常,我们需要逐行读取文件. GO 提供了 bufio 软件包,实现了有缓冲的 I/O.它包装一个 io.Reader 或 io.Writ ...