Python经典练习题(一)

文章目录

  • 🍀第一题
  • 🍀第二题
  • 🍀第三题
  • 🍀第四题
  • 🍀第五题

🍀第一题

有四个数字:1、2、3、4,能组成多少个互不相同且无重复数字的三位数?各是多少?

这里我们使用两种方法进行求解

解法一:
循环套循环

count = 0
for i in range(1, 5):for j in range(1, 5):for k in range(1, 5):if(i!=j) and (i!=k) and (j!=k):count += 1print('{0}-{1}-{2}'.format(i, j, k))
print("总共有", count, "个满足条件的三位数")

解法二:
使用Python内置的库

from itertools import permutationsdigits = [1, 2, 3, 4]
count = 0  # 计数器,用于统计满足条件的三位数的数量# 生成所有由1、2、3、4组成的三位数的排列组合
permuted_numbers = permutations(digits, 3)for perm in permuted_numbers:count += 1print(perm[0], perm[1], perm[2])print("总共有", count, "个满足条件的三位数")

🍀第二题

一个整数,它加上100后是一个完全平方数,再加上168又是一个完全平方数,请问该数是多少?

听起来,这题像一个数学题哈,或许在你家孩子的奥数班会看得到
具体讲解如下:


我们有两个等式:

x + 100 = m^2
x + 100 + 168 = n^2

首先,将第二个等式中的 x + 100 替换为 m^2,得到:

m^2 + 168 = n^2

现在,我们想找到两个整数 n 和 m,它们的乘积等于 168,同时它们之间的差为多少。这个问题等价于解一个二次方程:

(n + m)(n - m) = 168

这里,(n + m) 和 (n - m) 分别表示两个整数的和与差。我们希望找到这两个整数的和与差,其中差为 2(n - m = 2)。

为什么差是 2 呢?因为我们要找到两个完全平方数之间的差是 168,而 168 = 14 * 12。所以,如果我们让 (n + m) = 14,(n - m) = 12,那么乘积就是 168。这就是为什么 n - m = 2。

因此,当 (n + m) = 14,(n - m) = 12 时,我们可以解出 n 和 m 的值:

(n + m) = 14
(n - m) = 12

解这个方程组,得到:

n = 13
m = 1

这样,我们就找到了 n 和 m 的值,而 x = m^2 - 100 = 1^2 - 100 = -99。所以,满足条件的整数 x 是 -99。

for m in range(1, 169):if 168 % m == 0:n = 168 // mif n > m and (n - m) % 2 == 0:x = (n ** 2) - 100print("符合条件的整数 x 是:", x)

运行结果如下
在这里插入图片描述


🍀第三题

判断某年某月某日是一年的第几天

本题在编写之前,我们要明确哪个月份多少天,以及这个年份是不是闰年,所以这里我们创建了两个函数,一个用于判断是否是闰年,一个进行天数的计算

这里的天数计算采用列表切片的形式

def is_leap_year(year):"""判断是否是闰年的函数"""return (year % 4 == 0 and year % 100 != 0) or (year % 400 == 0)def day_of_year(year, month, day):"""计算某年某月某日是这一年的第几天的函数"""days_in_month = [0, 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31]if is_leap_year(year):days_in_month[2] = 29  # 闰年2月有29天if month < 1 or month > 12 or day < 1 or day > days_in_month[month]:return "输入日期无效"day_count = sum(days_in_month[:month]) + dayreturn day_count# 输入年月日
year = int(input("请输入年份:"))
month = int(input("请输入月份:"))
day = int(input("请输入日期:"))result = day_of_year(year, month, day)
if type(result) == int:print(f"{year}{month}{day}日是这一年的第{result}天")
else:print(result)

运行结果如下
在这里插入图片描述


🍀第四题

将一个列表的数据复制到另一个列表中

这里我们使用两个解法

方法一:使用切片操作(Slicing)

切片操作是一种简单且直接的方法,用于复制一个列表到另一个列表。它创建了原始列表的一个浅拷贝,这意味着两个列表之间的元素是独立的,但如果列表中包含其他可变对象(如列表中的列表),则这些可变对象在两个列表中仍然是共享的。

_list = [1, 2, 3, 4, 5]
copied_list = _list[:] 
_list[0] = 10  # 独立
print(_list)  
print(copied_list)   

运行结果如下
在这里插入图片描述
方法二:使用list()构造函数

另一种方法是使用内置的 list() 构造函数来创建一个新列表,这也会创建原始列表的一个浅拷贝。

_list = [1, 2, 3, 4, 5]
copied_list = list(_list)  
_list[0] = 10
print(_list) 
print(copied_list)  

运行结果如下
在这里插入图片描述

🍀第五题

输出9*9乘法表

for i in range(1, 10):for j in range(1, i + 1):print(f"{j} x {i} = {i * j}", end="\t")print()  

运行结果如下
在这里插入图片描述

这题耳熟能详的了,就不过多解释了

请添加图片描述

挑战与创造都是很痛苦的,但是很充实。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/84925.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

AtCoder ABC260 G 累积和

题意 传送门 AtCoder ABC260 G Scalene Triangle Area 题解 暴力 前缀和 对每一行计算前缀和&#xff0c;处理每一个询问时暴力枚举每一行进行累加。总时间复杂度 O ( n ( n q ) ) O\Big(n(n q)\Big) O(n(nq))。 #include <bits/stdc.h> using namespace std;vo…

HTTP 错误 401.3 - Unauthorized 由于 Web 服务器上此资源的访问控制列表(ACL)配置或加密设置,您无权查看此目录或页面。

用IIS 发布网站&#xff0c;不能访问且出现错误&#xff1a;HTTP 错误 401.3 - Unauthorized 由于Web服务器上此资源的访问控制列表(ACL)配置或加密设置。您无权查看此目录或页面 问题截图&#xff1a; 问题描述&#xff1a;HTTP 错误 401.3 - 未经授权&#xff1a;访问由于 A…

[RF学习记录][参数读取]从yaml文件读取参数变量

robotframework支持从yaml文件读取变量&#xff0c;对于比较多的参数&#xff0c;可以在yaml文件中定义好&#xff0c;在robot脚本中引用 1、定义yaml文件 文件内容如下&#xff0c;注意&#xff0c;变量和变量值之间要以4个字符分开 yaml_demo_name: tester traing_gpt_…

RabbitMQ 消息应答

每日一句 物是人非事事休,欲语泪先流。 概述 为了保证消息在发送过程中不丢失,RabbitMQ引入了消息应答机制, 消费者在接收到消息并且处理该消息后,告诉RabbitMQ它已经处理了,RabbitMQ可以把消息删除了。 自动应答 消息发送后立即被认为已经传送成功,这种模式需要在…

java实体类中,对某些属性进行equals和hashCode设定,通过对设定属性来判断对象是否相等

实体类 package demo12; import lombok.AllArgsConstructor; import lombok.Data; import lombok.NoArgsConstructor; import lombok.experimental.Accessors; import java.util.Objects; Data NoArgsConstructor AllArgsConstructor Accessors(chain true) public class Pre…

Hashmap

1、无参构造方法 //默认加载因子0.75 DEFAULT_LOAD_FACTORpublic HashMap() {this.loadFactor DEFAULT_LOAD_FACTOR; // all other fields defaulted}2、有参构造 public HashMap(int initialCapacity, float loadFactor) {if (initialCapacity < 0)throw new IllegalArgum…

Python150题day08

2.基础语法篇 2.1 if 条件句 ①单个条件分支 使用input函数接收用户的输入&#xff0c;如果用户输入的整数是偶数&#xff0c;则使用print函数输出"你输入的整数是:{value],它是偶数”&#xff0c;[value]部分要替换成用户的输入。 解答: value input("请输⼊⼀…

Guava Cache介绍-面试用

一、Guava Cache简介 1、简介 Guava Cache是本地缓存&#xff0c;数据读写都在一个进程内&#xff0c;相对于分布式缓存redis&#xff0c;不需要网络传输的过程&#xff0c;访问速度很快&#xff0c;同时也受到 JVM 内存的制约&#xff0c;无法在数据量较多的场景下使用。 基…

C++学习(1)

一、C概述&#xff08;了解&#xff09; C在C语言的基础上添加了面向对象编程和泛型编程的支持 二、helloword程序&#xff08;掌握&#xff09; #define _CET_SECURE_NO_WARNINGS//在开发软件visual studio编译 c文件时, visual studio认为strcpy,scanf等函数不安全的导致报…

苹果开发者账号注册及证书生成方法详解

转载&#xff1a;注册苹果开发者账号的方法 在2020年以前&#xff0c;注册苹果开发者账号后&#xff0c;就可以生成证书。 但2020年后&#xff0c;因为注册苹果开发者账号需要使用Apple Developer app注册开发者账号&#xff0c;所以需要缴费才能创建ios证书了。 所以新政策…

【送面试题】深入理解Netty与NIO:原理与关键组件解析

AIGC专栏/AI绘画教程/java面试题领取 导言 在现代分布式系统和网络应用开发中&#xff0c;高性能、低延迟的网络通信是至关重要的。Netty作为一个强大的网络框架&#xff0c;广泛应用于构建各种高性能的网络应用。而NIO&#xff08;New I/O&#xff09;则是Java提供的一种非阻…

什么是葡萄酒结构,结构型葡萄酒好吗?

葡萄酒爱好者使用许多复杂的术语来描述葡萄酒的味道&#xff0c;有些是不言自明的&#xff0c;有些则有点模糊。如果你不是葡萄酒专家&#xff0c;你可能很难理解这个葡萄酒术语的全部含义。其中一个术语是葡萄酒结构&#xff0c;那么葡萄酒结构是什么意思呢&#xff1f;而结构…

2023华为杯研究生数学建模D题思路代码分析

完整的分析查看文末名片获取&#xff01; 问题一&#xff1a;区域碳排放量以及经济、人口、能源消费量的现状分析 &#xff08;1&#xff09;建立指标与指标体系 要求1&#xff1a;指标能够描述某区域经济、人口、能源消费量和碳排放量的状况&#xff1b; 要求2&#xff1a…

电路的基本定律——基尔霍夫定律

基尔霍夫定律 &#x1f391;预备知识&#x1f391;基尔霍夫电流定律(KCL)&#x1f383;基尔霍夫电流定律的本质&#xff1a;节点上电荷具有连续性(不会突变)&#x1f383;基尔霍夫电流定律的推广&#xff1a; &#x1f391;基尔霍夫的电压定律(KVL)&#x1f383;基尔霍夫电压定…

中国这么多 Java 开发者,应该诞生出生态级应用开发框架

1、必须要有&#xff0c;不然就永远不会有 应用开发框架&#xff0c;虽然没有芯片、操作系统、数据库、编程语言这些重要。但是最终呈现在用户面前的&#xff0c;总是有软件部分。而软件系统开发&#xff0c;一般都需要应用开发框架&#xff0c;它是软件系统的基础性部件之一。…

在Windos 10专业版搭建Fyne(Go 跨平台GUI)开发环境

目录 在Windos 10专业版搭建Fyne&#xff08;Go 跨平台GUI&#xff09;开发环境一 Fyne 和 MSYS2简介1.1 Fyne1.2 MSYS2 二 安装 MSYS22.1 下载MSYS22.2 安装2.3 环境变量设置2.4 检测安装环境 三 参考文档 在Windos 10专业版搭建Fyne&#xff08;Go 跨平台GUI&#xff09;开发…

java内存分页工具类

hutool 依赖&#xff1a; <dependency><groupId>cn.hutool</groupId><artifactId>hutool-all</artifactId><version>5.5.7</version></dependency>代码如下&#xff1a; import cn.hutool.core.util.PageUtil; import lombok…

Greenplum实用工具-gpfdist

注&#xff1a;本文翻译自https://docs.vmware.com/en/VMware-Greenplum/7/greenplum-database/utility_guide-ref-gpfdist.html 向Greenplum数据库段提供数据文件或从数据库段写入数据文件。 语法 gpfdist [-d <directory>] [-p <http_port>] [-P <last_http…

zabbix学习2--zabbix6.x高可用

文章目录 1. server高可用-默认HA2. 访问高可用 1. server高可用-默认HA 1.部署zabbix单节点后&#xff0c;配置添加HANodeName和NodeAddress即为HA架构 2.zabbix1故障后切换zabbix2使用 3.浏览器访问主机1&#xff0c;使用主机1php前端连接mysql后zabbix2提供后台服务--------…

算法-单词搜索 II

算法-单词搜索 II 1 题目概述 1.1 题目出处 https://leetcode.cn/problems/word-search-ii/description/?envTypestudy-plan-v2&envIdtop-interview-150 1.2 题目描述 2 DFS 2.1 解题思路 每个格子往上下左右四个方向DFS&#xff0c;拼接后的单词如果在答案集中&…