python
应天๑
Nothing is Final!!!
展开
-
《Python编程从入门到实践》学习笔记09类
【代码】《Python编程从入门到实践》学习笔记09类。原创 2023-06-20 13:46:02 · 324 阅读 · 0 评论 -
《Python编程从入门到实践》学习笔记07用户输入
【代码】《Python编程从入门到实践》学习笔记07用户输入。原创 2023-06-20 13:14:00 · 348 阅读 · 0 评论 -
《Python编程从入门到实践》学习笔记08函数
【代码】《Python编程从入门到实践》学习笔记08函数。原创 2023-06-20 13:36:41 · 488 阅读 · 0 评论 -
《Python编程从入门到实践》学习笔记06字典
【代码】《Python编程从入门到实践》学习笔记06字典。原创 2023-06-04 00:04:28 · 759 阅读 · 0 评论 -
《Python编程从入门到实践》学习笔记05If语句
【代码】《Python编程从入门到实践》学习笔记05If语句。原创 2023-06-03 04:46:19 · 348 阅读 · 0 评论 -
《Python编程从入门到实践》学习笔记04操作列表
【代码】《Python编程从入门到实践》学习笔记04操作列表。原创 2023-05-31 21:54:27 · 555 阅读 · 0 评论 -
《Python编程从入门到实践》学习笔记03列表
【代码】《Python编程从入门到实践》学习笔记03列表。原创 2023-05-29 00:32:15 · 542 阅读 · 0 评论 -
《Python编程从入门到实践》学习笔记02变量与数据类型
【代码】《Python编程从入门到实践》学习笔记02 变量与数据类型。原创 2023-05-28 16:20:42 · 79 阅读 · 0 评论 -
用python读取Excel表格时出现的一些问题
import numpy as np import pandas as pddata = pd.DataFrame([])path='/Users/yingtian/Desktop/读取的文件.xlsx'f = pd.ExcelFile(path)此时报错:Traceback (most recent call last): File “<pyshell#5>”, line 1, inf = pd.ExcelFile(path) File “/Library/Fr原创 2021-05-31 16:52:30 · 4193 阅读 · 1 评论 -
PAT (Basic Level) Practice (中文)1024 科学计数法 python
出处:https://pintia.cn/problem-sets/994805260223102976/problems/9948052972294471681024 科学计数法 (20 分) 科学计数法是科学家用来表示很大或很小的数字的一种方便的方法,其满足正则表达式[±][1-9].[0-9]+E[±][0-9]+,即数字的整数部分只有 1 位,小数部分至少有 1位,该数字及其指数部分的正负号即使对正数也必定明确给出。 现以科学计数法的格式给出实数 A,请编写程序按普通数字表示法输出A,并原创 2021-05-21 00:21:45 · 152 阅读 · 0 评论 -
PAT (Basic Level) Practice (中文)1023 组个最小数 python
出处:https://pintia.cn/problem-sets/994805260223102976/problems/9948052982696345601023 组个最小数 (20 分) 给定数字 0-9各若干个。你可以以任意顺序排列这些数字,但必须全部使用。目标是使得最后得到的数尽可能小(注意 0 不能做首位)。例如:给定两个 0,两个1,三个 5,一个 8,我们得到的最小的数就是 10015558。 现给定数字,请编写程序输出能够组成的最小的数。输入格式:输入在一行中给出 10 个原创 2021-05-19 16:33:08 · 155 阅读 · 0 评论 -
PAT (Basic Level) Practice (中文)1022 D进制的A+B python
出处:https://pintia.cn/problem-sets/994805260223102976/problems/9948052993014333441022 D进制的A+B (20 分) 输入两个非负 10 进制整数 A 和 B (≤2^30−1),输出 A+B 的 D(1<D≤10)进制数。 输入格式:输入在一行中依次给出 3 个整数 A、B 和 D。输出格式:输出 A+B 的 D 进制数。输入样例:123 456 8 输出样例:1103代码:n = list(m原创 2021-05-19 16:19:02 · 109 阅读 · 0 评论 -
PAT (Basic Level) Practice (中文)1021 个位数统计 python
出处:https://pintia.cn/problem-sets/994805260223102976/problems/994805300404535296代码:n = input()num = [0] * 10 #建立一个数组,用来统计0-9出现的次数for i in n: num[int(i)] += 1for i in range(10): if num[i] != 0: print('%d:%d'%(i,num[i])) #按格式输出原创 2021-05-19 14:31:08 · 108 阅读 · 0 评论 -
PAT (Basic Level) Practice (中文)1020 月饼 python
出处:https://pintia.cn/problem-sets/994805260223102976/problems/9948053015621632001020 月饼 (25 分)月饼是中国人在中秋佳节时吃的一种传统食品,不同地区有许多不同风味的月饼。现给定所有种类月饼的库存量、总售价、以及市场的最大需求量,请你计算可以获得的最大收益是多少。注意:销售时允许取出一部分库存。样例给出的情形是这样的:假如我们有 3 种月饼,其库存量分别为 18、15、10 万吨,总售价分别为75、72、45原创 2021-05-19 01:31:29 · 154 阅读 · 0 评论 -
PAT (Basic Level) Practice (中文)1019 数字黑洞 python
出处:https://pintia.cn/problem-sets/994805260223102976/problems/9948053027868999681019 数字黑洞 (20 分) 给定任一个各位数字不完全相同的 4 位正整数,如果我们先把 4个数字按非递增排序,再按非递减排序,然后用第 1 个数字减第 2个数字,将得到一个新的数字。一直重复这样做,我们很快会停在有“数字黑洞”之称的 6174,这个神奇的数字也叫 Kaprekar 常数。例如,我们从6767开始,将得到7766 -原创 2021-05-18 19:13:44 · 268 阅读 · 1 评论 -
PAT (Basic Level) Practice (中文)1018 锤子剪刀布 python (无超时)
出处:https://pintia.cn/problem-sets/994805260223102976/problems/9948053040200253441018 锤子剪刀布 (20 分) 大家应该都会玩“锤子剪刀布”的游戏:两人同时给出手势,胜负规则如图所示:现给出两人的交锋记录,请统计双方的胜、平、负次数,并且给出双方分别出什么手势的胜算最大。输入格式:输入第 1 行给出正整数 N(≤10^5 ),即双方交锋的次数。随后 N 行,每行给出一次交锋的信息,即甲、乙双方同时给出的的原创 2021-05-16 18:51:27 · 384 阅读 · 1 评论 -
PAT (Basic Level) Practice (中文)1017 A除以B python
出处:https://pintia.cn/problem-sets/994805260223102976/problems/9948053051818475521017 A除以B (20 分) 本题要求计算 A/B,其中 A 是不超过 1000 位的正整数,B 是 1 位正整数。你需要输出商数 Q和余数 R,使得 A=B×Q+R 成立。 输入格式:输入在一行中依次给出 A 和 B,中间以 1 空格分隔。输出格式:在一行中依次输出 Q 和 R,中间以 1 空格分隔。输入样例:12345678原创 2021-05-16 17:33:22 · 156 阅读 · 0 评论 -
PAT (Basic Level) Practice (中文)1016 部分A+B python
出处:https://pintia.cn/problem-sets/994805260223102976/problems/9948053063101153281016 部分A+B (15 分) 正整数 A 的“DA(为 1 位整数)部分”定义为由 A 中所有 DA组成的新整数 PA。例如:给定A=3862767,DA=6,则 A 的“6 部分”PA是 66,因为 A 中有 2 个 6。 现给定 A、DA、B、DB,请编写程序计算PA+PB。输入格式:输入在一行中依次给出 A、DA、B、DB原创 2021-05-16 17:21:48 · 144 阅读 · 0 评论 -
PAT (Basic Level) Practice (中文)1015 德才论 python
出处:https://pintia.cn/problem-sets/994805260223102976/problems/994805307551629312这个题按照题目描述的一步步写出来到没有很难,但是问题是python的常规写法往往会有超时。我看到很多地方都是用别的语言解决这个问题,目前只看到一个用python写的可全部通过(多数情况下)的版本:https://blog.csdn.net/letv0907/article/details/104788854?ops_request_misc原创 2021-05-16 16:44:09 · 341 阅读 · 0 评论 -
PAT (Basic Level) Practice (中文)1014 福尔摩斯的约会 python
出处:https://pintia.cn/problem-sets/994805260223102976/problems/994805308755394560大侦探福尔摩斯接到一张奇怪的字条:我们约会吧! 3485djDkxh4hhGE 2984akDfkkkkggEdsb s&hgsfdkd&Hyscvnm。大侦探很快就明白了,字条上奇怪的乱码实际上就是约会的时间星期四 14:04,因为前面两字符串中第 1对相同的大写英文字母(大小写有区分)是第 4 个字母 D,代表星期四;第原创 2021-05-11 16:35:39 · 137 阅读 · 0 评论 -
PAT (Basic Level) Practice (中文)1013 数素数 python
出处:https://pintia.cn/problem-sets/994805260223102976/problems/994805309963354112输入格式:输入在一行中给出 M 和 N,其间以空格分隔。输出格式:输出从 PM 到 PN 的所有素数,每 10 个数字占 1 行,其间以空格分隔,但行末不得有多余空格。我开始以为是输出从M到N之间的素数,其实题目要求的是输出第M个到第N个素数。代码:import mathm = list(map(int,input().split(原创 2021-05-04 17:14:24 · 202 阅读 · 0 评论 -
PAT (Basic Level) Practice (中文)1012 数字分类 python
出处:https://pintia.cn/problem-sets/994805260223102976/problems/994805311146147840这个题比较容易,不过一些小细节要注意。代码:m = list(map(int,input().split()))n = m[0]res = m[1:]A1,A2,A3,A4,A5 = 0,0,0,0,0flag = 1sum1 = 0sum2 = 0for i in range(n): if res[i] % 5 ==原创 2021-05-02 17:41:36 · 114 阅读 · 0 评论 -
PAT (Basic Level) Practice (中文)1011 A+B 和 C python
出处:https://pintia.cn/problem-sets/994805260223102976/problems/994805312417021952这个题应该是到目前为止的最简单的一个题。代码:n = int(input())for i in range(n): res = list(map(int,input().split())) if res[0] + res[1] > res[2]: print('Case #{}: true'.forma原创 2021-05-02 00:18:14 · 134 阅读 · 0 评论 -
PAT (Basic Level) Practice (中文)1010 一元多项式求导 python
出处:https://pintia.cn/problem-sets/994805260223102976/problems/994805313708867584开始的时候没太看懂题目什么意思,后来大致明白了,就是求导,前一位是系数,后一位是指数,如果是0的话返回0 0。参考:https://blog.csdn.net/nanhuaibeian/article/details/99226672?ops_request_misc=%257B%2522request%255Fid%2522%253A%25原创 2021-04-28 01:42:40 · 105 阅读 · 0 评论 -
PAT (Basic Level) Practice (中文)1009 说反话 python
出处:https://pintia.cn/problem-sets/994805260223102976/problems/994805314941992960这个题还是比较容易的,就是注意输出格式倒着输出就可以了。代码:m = input().split()m.reverse()print(' '.join(m))我的错误代码:m = input().split(' ')for i in range(len(m) - 1,-1,-1): print(m[i])哪里格式错了原创 2021-04-28 01:33:47 · 84 阅读 · 0 评论 -
PAT (Basic Level) Practice (中文)1008 数组元素循环右移问题 python
出处:https://pintia.cn/problem-sets/994805260223102976/problems/994805316250615808这个题目还是比较容易理解的,实现起来也比较容易。代码:tmp,shuzu = input().split(' '),input().split(' ')m,n = int(tmp[0]),int(tmp[1])print(' '.join(shuzu[m - n:] + shuzu[0:m - n]))下面记录一下我在做题的时候写的错原创 2021-04-28 01:22:36 · 240 阅读 · 1 评论 -
PAT (Basic Level) Practice (中文)1007 素数对猜想 python
出处:https://pintia.cn/problem-sets/994805260223102976/problems/9948053175466557441007 素数对猜想 (20 分)这个题的主要思路是首先要找到不超过N的多有素数,然后计算它们当中相差为2的个数。如何求素数,最简单的方法就是依次除以从2到比自己小1的数,只有其中有一个能整除,就说明它不是素数。但这样的做法太暴力了,提交后会超时。进行优化,第一步是除到根号N就可以了,为什么呢?因为假设存在一个大于根号N的数能被N整除,那原创 2021-04-28 00:40:47 · 128 阅读 · 0 评论 -
PAT (Basic Level) Practice (中文)1006 换个格式输出整数 python
出处:https://pintia.cn/problem-sets/994805260223102976/problems/994805318855278592这个题还是比较简单的:n = int(input())bai = 0shi = 0ge = 0bai = int(n / 100)shi = int((n - 100 * bai) / 10)ge = n % 10shuchu = ''for i in range(int(bai)): shuchu += 'B'for原创 2021-04-25 16:57:23 · 67 阅读 · 0 评论 -
PAT (Basic Level) Practice (中文)1005 继续(3n+1)猜想 python
出处:https://pintia.cn/problem-sets/994805260223102976/problems/9948053203065077761005 继续(3n+1)猜想 (25 分)卡拉兹(Callatz)猜想已经在1001中给出了描述。在这个题目里,情况稍微有些复杂。当我们验证卡拉兹猜想的时候,为了避免重复计算,可以记录下递推过程中遇到的每一个数。例如对 n=3 进行验证的时候,我们需要计算 3、5、8、4、2、1,则当我们对 n=5、8、4、2 进行验证的时候,就可以直接判定原创 2021-04-25 10:31:21 · 123 阅读 · 0 评论 -
PAT (Basic Level) Practice (中文)1004 成绩排名 python
出处:https://pintia.cn/problem-sets/994805260223102976/problems/994805321640296448n = int(input())name = [] #存储名字变量的数组num = [] #存储学号变量的数组grade = [] #存储成绩变量的数组,maxgrade = 0 #maxgrade为最大成绩,先设置的小一点,方便后续替换mingrage = 100 #mingrade为最小成绩,先设置的大一点,方便后原创 2021-04-21 23:22:10 · 91 阅读 · 0 评论 -
PAT (Basic Level) Practice (中文)1003 我要通过!python
出处:https://pintia.cn/problem-sets/994805260223102976/problems/994805323154440192参考:https://blog.csdn.net/nanhuaibeian/article/details/98741857?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522161900721816780264041480%2522%252C%2522scm%2522%253A%252原创 2021-04-21 22:09:52 · 119 阅读 · 0 评论 -
PAT (Basic Level) 1002 写出这个数 python
https://pintia.cn/problem-sets/994805260223102976/problems/994805324509200384n = input() #读入数字m = len(n) #m为数字长度sum = 0 #sum为数字各位之和for i in range(m): #将数字各位相加 sum += int(n[i]) #读入的为字符串形式,相加需转换成int型shuzi = ['ling','yi','er','san','si','wu','li原创 2021-04-21 20:07:36 · 68 阅读 · 0 评论 -
PAT (Basic Level) Practice1001 害死人不偿命的(3n+1)猜想 python
1001 害死人不偿命的(3n+1)猜想 (15 分)作者CHEN, Yue单位浙江大学代码长度限制16 KB时间限制400 ms内存限制64 MBn = int(input()) #input()是以字符形式输入的,这里转换成int形式sum = 0 #sum用来记录砍几下if n > 0 and n <= 1000: #用来满足不超过1000的正整数这个条件 while n != 1: #砍到1停止 if n % 2 == 0:原创 2021-04-21 18:36:00 · 83 阅读 · 0 评论 -
力扣 (LeetCode)刷题笔记9. 回文数 python
给你一个整数 x ,如果 x 是一个回文整数,返回 true ;否则,返回 false 。回文数是指正序(从左向右)和倒序(从右向左)读都是一样的整数。例如,121 是回文,而 123 不是。示例 1:输入:x = 121输出:true示例 2:输入:x = -121输出:false解释:从左向右读, 为 -121 。 从右向左读, 为 121- 。因此它不是一个回文数。示例 3:输入:x = 10输出:false解释:从右向左读, 为 01 。因此它不是一个回文数。示例 4:输原创 2021-04-13 23:09:39 · 184 阅读 · 0 评论 -
力扣 (LeetCode)刷题笔记8. 字符串转换整数 (atoi) python
请你来实现一个 myAtoi(string s) 函数,使其能将字符串转换成一个 32 位有符号整数(类似 C/C++ 中的 atoi 函数)。函数 myAtoi(string s) 的算法如下:读入字符串并丢弃无用的前导空格检查下一个字符(假设还未到字符末尾)为正还是负号,读取该字符(如果有)。 确定最终结果是负数还是正数。 如果两者都不存在,则假定结果为正。读入下一个字符,直到到达下一个非数字字符或到达输入的结尾。字符串的其余部分将被忽略。将前面步骤读入的这些数字转换为整数(即,“123” -原创 2021-04-13 23:01:00 · 359 阅读 · 1 评论 -
力扣 (LeetCode)刷题笔记7. 整数反转 python
给你一个 32 位的有符号整数 x ,返回将 x 中的数字部分反转后的结果。如果反转后整数超过 32 位的有符号整数的范围 [−231, 231 − 1] ,就返回 0。假设环境不允许存储 64 位整数(有符号或无符号)。示例 1:输入:x = 123输出:321示例 2:输入:x = -123输出:-321示例 3:输入:x = 120输出:21示例 4:输入:x = 0输出:0提示:-231 <= x <= 231 - 1来源:力扣(LeetCode)链原创 2021-04-03 12:38:28 · 184 阅读 · 1 评论 -
力扣 (LeetCode)刷题笔记6. Z 字形变换 python
将一个给定字符串 s 根据给定的行数 numRows ,以从上往下、从左到右进行 Z 字形排列。比如输入字符串为 “PAYPALISHIRING” 行数为 3 时,排列如下:P A H NA P L S I I GY I R之后,你的输出需要从左往右逐行读取,产生出一个新的字符串,比如:“PAHNAPLSIIGYIR”。请你实现这个将字符串进行指定行数变换的函数:string convert(string s, int numRows);示例 1:输入:s = “PAY原创 2021-04-03 01:47:49 · 260 阅读 · 1 评论 -
力扣 (LeetCode)刷题笔记5.最长回文子串 python
给你一个字符串 s,找到 s 中最长的回文子串。示例 1:输入:s = “babad”输出:“bab”解释:“aba” 同样是符合题意的答案。示例 2:输入:s = “cbbd”输出:“bb”示例 3:输入:s = “a”输出:“a”示例 4:输入:s = “ac”输出:“a”提示:1 <= s.length <= 1000s 仅由数字和英文字母(大写和/或小写)组成来源:力扣(LeetCode)链接:https://leetcode-cn.com/probl原创 2021-03-31 01:36:43 · 299 阅读 · 4 评论 -
力扣 (LeetCode)刷题笔记4.寻找两个正序数组的中位数 python
给定两个大小分别为 m 和 n 的正序(从小到大)数组 nums1 和 nums2。请你找出并返回这两个正序数组的 中位数 。示例 1:输入:nums1 = [1,3], nums2 = [2]输出:2.00000解释:合并数组 = [1,2,3] ,中位数 2示例 2:输入:nums1 = [1,2], nums2 = [3,4]输出:2.50000解释:合并数组 = [1,2,3,4] ,中位数 (2 + 3) / 2 = 2.5示例 3:输入:nums1 = [0,0], nums原创 2021-03-23 00:00:14 · 254 阅读 · 0 评论 -
力扣 (LeetCode)刷题笔记3.无重复字符的最长子串 python
给定一个字符串,请你找出其中不含有重复字符的 最长子串 的长度。示例 1:输入: s = “abcabcbb”输出: 3解释: 因为无重复字符的最长子串是 “abc”,所以其长度为 3。示例 2:输入: s = “bbbbb”输出: 1解释: 因为无重复字符的最长子串是 “b”,所以其长度为 1。示例 3:输入: s = “pwwkew”输出: 3解释: 因为无重复字符的最长子串是 “wke”,所以其长度为 3。请注意,你的答案必须是 子串 的长度,“pwke” 是一个子序列,不是原创 2021-03-21 23:47:45 · 235 阅读 · 2 评论