Python学习
记录python的学习过程,知识点
半岛铁盒@
打油!干饭人!
展开
-
编写函数,基于期中成绩和期末成绩,按指定权重(默认0.3和0.7)计算总分。
问题原创 2022-05-31 22:01:13 · 1640 阅读 · 1 评论 -
python 函数的使用和学习
函数分类内置函数:abs()、len()、max()标准库函数:math库、random库第三方库函数:jieba、numpy、requests自定义函数函数的定义def 函数名([形参列表]):函数体注意:冒号不可省函数体相对于def关键字必须保证一定的缩进题目练习1. 编写函数,求任意个连续整数的和。def sum(m,n): if(m>n): m,n = n,m s=0 for i in range(m,n+1):原创 2022-04-27 19:44:17 · 3099 阅读 · 0 评论 -
python将2 8 16任意进制数转换为10进制输出
输入一个8进制数,将其转换为10进制后输出。例如:输入:101,输出:65value = "101"result = int(value, 8)print(result)同理 若是要将其他进制的数据转为10进制输出只需要将 int(value, ** )把int 改为(value,2)(value,16)...原创 2022-04-20 20:17:37 · 1267 阅读 · 0 评论 -
Python 字典的基本操作 题目练习
查找字典条目统计句子“Life is short,we need Python.”中各字符出现的次数。s='Life is short,we need Python.'s=s.lower()print(s)dic={}for a in s: dic[a] = dic.get(a,0) + 1for k in dic: print(k,dic[k])原创 2022-04-20 19:16:53 · 1684 阅读 · 0 评论 -
Python列表和元组的练习
为了监督饮食质量,食堂向学生发起了一个简单的问卷调查。最后回收的问卷结果形成一个字符串:”满意,一般,不满意,一般,一般,非常满意,满意,不满意,非常满意,满意,不满意,满意,不满意,非常满意“。请编写程序,利用列表统计每个评语出现次数,并找出次数最多的那个评语。s = "满意,一般,不满意,一般,一般,非常满意,满意,不满意,非常满意,满意,不满意,满意,不满意,非常满意"comments=["非常满意","满意","一般","不满意"]lst= list(s.split(","))score.原创 2022-04-18 12:40:20 · 3064 阅读 · 1 评论 -
使用列表生成式,生成一个随机数在0到20的集合
import randoma = [random.randint(0,20) for x in range(20)]sets=set(a)print(sets)原创 2022-04-14 16:35:17 · 1918 阅读 · 0 评论 -
Python集合与题目练习
集合的运算:求并集运算符 |union()方法集合的运算:求交集1.运算符&2.intersection()方法集合的运算:求差集1.运算符-2.difference()方法集合的运算:求对称差集1.运算符^2.symmetric_difference()方法例子例5.6 IEEE和TIOBE是两大热门编程语言排行榜。截至2018年12月,IEEE榜排名前五的语言是:Python、C++、C、Java和C#。TIOBE榜排名前五的语言分别是:Java、C原创 2022-04-14 16:24:21 · 5193 阅读 · 1 评论 -
Python字典与集合的应用实例
字典的合并班级学籍信息统计如下:女生籍贯分布是江苏3人,浙江2人,吉林1人;男生籍贯分布是江苏8人,浙江5人,山东5人,安徽4人,福建2人。编写程序将统计结果合并并输出。male = {"江苏": 8, "浙江": 5, "山东": 5, "安徽": 4, "福建": 2}female = {"江苏": 3, "浙江": 2, "吉林": 1}dic = male.copy() //复制其中的一个空表for k, v in female.items(): dic[k] = dic.get(原创 2022-04-14 16:14:15 · 3719 阅读 · 0 评论 -
Python 谁是小偷? 嫌疑人A、B、C、D的笔录如下,其中三人为真,一人为假:
谁是小偷?嫌疑人A、B、C、D的笔录如下,其中三人为真,一人为假:A:我不是小偷B:C是小偷C:小偷肯定是DD:C在冤枉人要求:提交清晰代码及运行通过截屏。调试须至少输入两次自然数且运行得到正确结果。for i in range(1, 5): if ((i != 1) + (i == 3) + (i == 4) + (i != 4)) == 3: i = chr(i + 64) #数字转字母 print('小偷是%c' % i)这里涉及了字母.原创 2022-03-25 19:49:42 · 3636 阅读 · 0 评论 -
Python使用列表生成式生成列表,其元素为100以内所有能被3整除的数。
列表生成式的格式:[ expression for i in 序列 if …] == 表达式+循环+条件a = [x for x in range(1, 100) if x % 3 == 0]print(a)原创 2022-03-25 18:58:17 · 12203 阅读 · 0 评论 -
Python求找出1000以内所有的“完数”
完全数(Perfect number),又称完美数或完备数,是一些特殊的自然数。它所有的真因子(即除了自身以外的约数)的和(即因子函数),恰好等于它本身。如果一个数恰好等于它的真因子之和,则称该数为“完全数”。如6=1+2+3即为完数。要求:提交清晰代码及运行通过截屏。调试须至少输入两次自然数且运行得到正确结果。for i in range(1, 1001): a = 0 for j in range(1, i): if i % j == 0: a原创 2022-03-25 16:49:15 · 26261 阅读 · 3 评论 -
Python输出黄金分隔数列前n项。 黄金分隔数列由Fibonacci数列相邻两项之比组成:1/1,1/2,2/3,3/5,5/8,...其取值逐渐接近黄金分隔数。
from fractions import Fractionfor m in range(0, 2): n = int(input('你想输出黄金分割数列的多少项?')) c=[] def fib(n): a, b = 1, 1 for i in range(n+1): c.append(a) a, b = b, a+b print(c) if __name__ == '__.原创 2022-03-25 15:51:17 · 724 阅读 · 0 评论 -
Python 使用穷举法求两个数的最大公约数。
for m in range (0,2): a = int(input("请输入一个数:")) b = int(input("请输入另外一个数:")) #判断num1与num2的大小 if a > b: #获取最小值 min = b else: #获取最小值 min = a for i in range(min+1,0,-1): #倒序 #满足公因数的条件: .原创 2022-03-25 13:26:51 · 4218 阅读 · 3 评论 -
Python用两个骰子玩掷骰子的游戏。本金为10元,当掷出“7”即获得奖金4元,否则扣除1元。编程测算玩到多少手时钱全部输完,及哪一手时钱数最多。
作业没百度到,自己动手写一个吧import randomimport numpyfor m in range(0, 2): money = 10 count = 0 c = [10] while money > 0: a = random.randint(1, 6) b = random.randint(1, 6) num = a + b if num == 7: money原创 2022-03-25 13:21:33 · 5105 阅读 · 0 评论 -
Python zipfile 文件名称编码 file_name.encode(‘cp437‘).decode(‘gbk‘)
with zipfile.ZipFile('love.zip', 'r') as zipobj: #读取压缩包 for file_name in zipobj.namelist(): #遍历名称 info = zipobj.getinfo(file_name) file_name = file_name.encode('cp437').decode('gbk') lis.append([file_name,info.file_size])在遍历名称原创 2021-08-24 17:28:29 · 2186 阅读 · 0 评论 -
介绍Python中方法ljust(),rjust(),center()和zfill()
s=“abcde”ljust()左对齐,不满50位的数用0补充;s="abcde"print s.ljust(50,'0')rjust(),右对齐center(),中间对齐S.zfill(width) #把S变成width长,并在右对齐,不足部分用0补足原创 2021-03-21 23:13:01 · 463 阅读 · 0 评论 -
(Python)from collections import Counter统计包
用法这里有个文件from collections import Counterf=open('file.txt','r')a=f.read()print Counter(a)得到flag:DCTF{ka1f4NgxlntAi}原创 2021-03-04 17:23:24 · 533 阅读 · 1 评论 -
python导入包库的两种语句import 和 from … import
使用 import 引入并调用 support 模块# 导入模块import support# 现在可以调用模块里包含的函数了support.print_func("Runoob")使用 from … import 模块的正确方法:# 导入模块from support import *# 现在可以调用模块里包含的函数了print_func("Runoob")两者的差异在于 包.方法 / 一个是直接 方法推荐使用 import 语句,避免使用 from … impor原创 2020-12-07 23:44:45 · 1258 阅读 · 0 评论 -
详细讲解Python中继承内容之 单继承;(一)
文章目录Python 面向对象的三大特征初看继承总结Python 面向对象的三大特征初看继承继承的使用总结原创 2021-02-26 18:19:35 · 165 阅读 · 0 评论 -
详细讲解python中的析构方法;
概述定义例子一.这时程序结束,释放内存空间二.当在程序下方添加 一段话程序没有结束可以发现析构方法并没有执行.当在 程序等待中…之后输入一段数字再回车; 程序结束.内存释放.三.对象呗手动删除时也调用析构方法四.总结...原创 2021-02-24 17:25:09 · 2949 阅读 · 0 评论 -
python详解enumerate()方法;
介绍用法既然是列举, 该方法一般常用于 数组, 配合for循环来使用效果:例一:nums = [1,2,3,1,1,3]for inx, i in enumerate(nums)print(inx,i) # inx i 0 1 1 2 2 3 3 1 4 1 5 3例二:...原创 2021-02-22 23:04:34 · 1554 阅读 · 0 评论 -
用Python写一个双人对战的小游戏;
游戏介绍第一步: 创建角色类接着定义方法来描述人物角色的行为第二步: 创建两个实例化对象,人物角色xmcx=Role('西门吹雪',100) ygc=Role('叶孤城',100)第三步:战斗过程的描述while True: if xmcx.hp<=0 or ygc.hp<=0: if xmcx>0: print"西门吹雪获胜" else: print"叶孤城获胜"原创 2021-02-20 22:06:19 · 3303 阅读 · 8 评论 -
详细介绍Python中的“魔术方法“__XXX___; 概述__str__()方法;__new__()方法; 三. __ new__ 和__init__的区别
概述一.__str__方法当不用__str__()时:发现输出结果只有对象一串id地址信息;当我们想打印出更多信息时,用__str__()方法;二.new()方法三. __ new__ 和__init__的区别原创 2021-02-18 16:45:56 · 182 阅读 · 0 评论 -
详细讲解Python中的self;什么是self?self的传参问题?
self是什么可以看出两者的内存地址是一样的;self的传参问题小结原创 2021-02-15 17:29:12 · 1709 阅读 · 1 评论 -
CTF-Python常用函数语段详解;
自述博主是打CTF的,描述函数可能会与CTF题相结合;开始****一.chr() 函数;chr() 用一个范围在 range(256)内的(就是0~255)整数作参数,返回一个对应的字符。chr(i),i – 可以是10进制也可以是16进制的形式的数字。返回值是当前整数对应的 ASCII 字符。一道逆向解题脚本写了: flag+=chr((18^enflag[i])-6),意思是计算括号中的式子,值返回ASCII码;二.for i in range ()作用for i in range原创 2020-12-02 23:59:36 · 969 阅读 · 1 评论 -
Python-with open() as f的用法
with open(r'filename.txt') as f: data_user=pd.read_csv(f) #文件的读操作with open('data.txt', 'w') as f: f.write('hello world') #文件的写操作 相关参数r: 以只读方式打开文件。文件的指针将会放在文件的开头。这是**默认模式**。rb: 以二进制格式打开一个文件用于只读。文件指针将会放在文件的开头。这是默认模式。r+: 打开一个文件用于读写。文件指针将会放在文原创 2020-12-07 23:50:43 · 2174 阅读 · 0 评论 -
python-try-except:pass的用法
1.为了跳过for循环里的某次循环,以下代码当某次循环发生错误时,执行except代码块,continue跳过该次循环:for i in range(x): try: i += 1 print(i) except: continue 还可以写成这样,遇到错误执行except代码块,pass忽略错误并继续往下运行,略有不同的就是无论程序错误与否都会运行到continue这一行代码:for i in range(x): try原创 2020-12-06 12:52:42 · 2990 阅读 · 0 评论 -
【Python】append()方法
1.方法概述:在列表末尾添加新的对象list.append(erd)2.代码示例原创 2020-12-08 10:56:12 · 966 阅读 · 0 评论 -
Python正则表达式介绍 re.findall(pattern, str, flag=0)/re.I re.L re.M
Python 正则表达式正则表达式是一个特殊的字符序列,它能帮助你方便的检查一个字符串是否与某种模式匹配。re.findall(pattern, str, flag=0) 共三个参数,pattern是匹配的正则表达式,str是待匹配字符串findall() 找到 RE 匹配的所有子串,并把它们作为一个列表返回正则表达式修饰符介绍正则表达式可以包含一些可选标志修饰符来控制匹配的模式。修饰符被指定为一个可选的标志。多个标志可以通过按位 OR(|) 它们来指定。如 re.I | re.M 被设置成 I原创 2020-12-08 10:52:20 · 2120 阅读 · 1 评论 -
Python 定义一个类和创建对象讲解
一. 定义一个类创建一个人的类先:class Person: name = '迪奥布兰度' age=20 def eat(self): print("吃饭") pass二.创建一个对象xm=Person()xm.eat()吃饭原创 2021-02-07 16:48:53 · 601 阅读 · 1 评论 -
Python--set集合讲解; 什么是集合?创建一个集合;集合的操作函数;
什么是集合?创建一个集合第一种方式:set={"1","2"}第二种方式list = ['1','2']set1 = set(list)集合的操作函数set={1,2,3}add() 添加一个元素set.add(‘python’)print(set){1,2,3,‘python’}clear() 清空操作set.clear()print(set)set()different()intersection()**union()**并集操作pop() d原创 2021-02-05 20:25:22 · 147 阅读 · 0 评论 -
python负数取余 整除运算
这部分容易出一些误区整除运算1. 正数整除负数10 // -3-4总结:(分割法)10被3分隔成4份,所以结果为-42. 负数整除正数-10 // 3-4总结:(分割法)10被3分隔成4份,所以结果为-43. 负数整除负数-10 // -33总结:按正数运算的结果求余运算前两个可以理解为符号与第一个数相反1. 正数对负数取模10 % -3-2总结:10减去比10大能被3整除的数,即为-2122.负数对正数取模-10 % 32总结:比10大能被原创 2021-02-04 23:10:30 · 1417 阅读 · 1 评论 -
全面讲解Python字典;--什么是字典?字典的常用方法;创建空字典并赋值,增删改查字典中的元素
一.什么是字典?二.字典的常用方法1.len()统计数据项长度A={“name”:‘迪奥’,‘age’:‘600’}print(len(A))2计算方法是每隔一个逗号是一个项2.keys()获取所有的键----keyA={“name”:‘迪奥’,‘age’:‘600’}print(A.keys())A_keys(['name', 'age'])3.values()获取所有值A={“name”:‘迪奥’,‘age’:‘600’}print(A.values())A_原创 2021-01-31 22:31:23 · 591 阅读 · 0 评论 -
详细讲解Python字符串的各种内置方法
1.capitalize()把字符串第一个字母变成大写;a='xiao'a.capitalize()'Xiao'2.casefold()把所有字母变成小写a='XiAo'a.casefold()'xiao'a'XiAo'注意这个过程是一个复制的过程,原来的字符串是不变的3.count()b=“Abaac”b.count('a')24.expandtabs()可以把\t转化为两个tab,即缩进,8个空格a='1\t2\t'a.expandtabs()'1 2'原创 2021-01-30 22:57:55 · 234 阅读 · 1 评论 -
全面讲解Python列表数组(四)什么是元组?元组跟列表数组的差异?元组的特征符号是啥子?
一.元组跟列表数组的差异?元组与列表是相似的,它们的差异是:元组里面的元素是不可更改的;列表数组里面的元素是可以进行增删修改的;创建一个元组:这个过程一般情况下用的是(),t = (1,2,3,4)t(1,2,3,4)二. 元组的特征符号是啥子?这里不要错以为是()其实是 ,举个????8*(8)64而8*(8,)(8,8,8,8,8,8,8,8)懂了吧?三.元组中怎么添加或删除元素虽说元组中的元素是不可改变的,但那也不是绝对的,我们来看;用切片的方法 添原创 2021-01-30 22:02:56 · 165 阅读 · 0 评论 -
全面讲解Python列表数组(三)列表数组类型的内置函数方法
列表数组类型的内置函数方法这里有一个列表 list1[1,2,3,4,1,5,6,7,8,9]一, count()list1.coount(1)2作用是计算列表一个元素出现的次数;二. index()list1.index(1)0起作用是给出该元素在列表中第一次出现的下标;当该元素在列表中出现多次时,可以给个特定的范围,例如;list1.index(1, 3, 7)4以上两个不是太常用,下面几个较为常用,需要注意哦!三.reverse()它的作用是把列表前后元素对调;l原创 2021-01-28 21:40:35 · 460 阅读 · 0 评论 -
全面讲解Python列表数组(二),列表分区/片,列表操作符,比较操作符,逻辑操作符,连接操作符,重复操作符,成员关系操作符;
列表分片简单概括来说就是可以从一个列表中一次性取出来多个元素等操作;这里有一个列表 member=[1,2,3,4,5]member[1:3][2,3]还可以member[:3][1,2,3]还可以member[1:][2,3,4,5]还可以member[:][1,2,3,4,5]这里的 1:3 是不包括3的哦!并且的到的列表是原来列表的拷贝,原来的列表是不变化的;提到了拷贝,还可以进行下面的操作:member2=member[:]member2[1,2,3,4,5]原创 2021-01-28 20:21:42 · 232 阅读 · 0 评论 -
全面讲解Python列表数组(一)创建,增删改查,萌新版,
一. 创建列表创建一个普通列表: member = [1,2,3,4,5]混合列表mix = [1,2,'哈',[3,4]] 这个特性很重要哦,是python特点之一;空列表empty = []二.向列表添加元素这里用到三个方法,逐个说明;这里有一个列表 member=[1,2,3,4]append()member.append('迪奥')那么这个列表就变为 member=[1,2,3,4,'迪奥']需要注意的是append()只能添加一个量,添加两个或以上就会报错.原创 2021-01-28 18:50:25 · 359 阅读 · 2 评论 -
详细讲解Python _init_()方法;为什么需要 innit方法?__init__传参
为什么需要 innit方法?可以看出 创建cat对象,又要需要重新添加属性.从而引出 innit方法;init()方法举个例子:创建一个类 和 实例方法,并创建属性;xq=People()print(xq.name)小倩直接这样用就可以了,不用重新创建和赋值属性了当你想修改属性里面的内容时就OK了;__init__传参现在我们开始对上面的那个类就行改进,使其可以更加通用:我们试一下效果如何;就是这个样子;...原创 2021-02-10 19:51:31 · 481 阅读 · 1 评论