【纯干货分享】Python初学者必须吃透的100个常用函数!

前言

新手在做写代码的时候容易卡壳,尤其当接触的函数以及其他知识比较多的时候,经常会看完需求之后不知道自己该用什么方法来实现它,实现的逻辑可能你有,但怎么该用什么函数给忘了,这其实就是知识的储备不够,你记不住哪个函数有什么作用,自然一头雾水。

这几天我专门整理了Python常用的一些函数,从最基础的输入输出函数到正则等12个板块的,总共100多个常用函数,方便小伙伴们进行快速地记忆,每天快速过一遍,用的时候再加深一下,慢慢地你就会摆脱写代码卡壳的状况。

虽说自学编程的时候我们强调更多的东西是理解和实际去敲代码,但有些东西你是要必须牢记的,否则你写代码将寸步难行。老手当然已经烂记于心,新手想要快速得心应手开发,记住高频使用的函数就是一个好法子。

【----相关技术讨论,Python入门基础教程文末见晓!----】

1. 基础函数

  • print():输出
  • input():输入
  • int():转整型
  • float():转浮点型
  • str():转字符串
  • type():返回对象的类型
  • isinstance():返回布尔值(True,False)

案例:将浮点型数值转换为字符串,输出转换后的数据类型

`f=30.5
ff=str(f)
print(type(ff))

#输出结果为class'str'`

2. 流程控制

  • if语句:执行1——条件判断
  • if条件:代码块1else:代码块2——条件判断
  • while:判断循环
  • for:计数循环
  • range():范围函数,可控制开始位置、结束位置和步长
  • break:跳出循环
  • continue:跳过本次循环,后面的循环继续执行

案例:根据用户输入的分数判断成绩,低于50分时提示“你的分数低于50分”,5059分时提示“你的分数在60分左右”,大于等于60分为及格,8090分为优秀,大于90分为非常优秀。

s = int(input("请输入分数:"))
if 80 >= s >= 60:
    print("及格")
elif 80 < s <= 90:
    print("优秀")
elif 90 < s <= 100:
    print("非常优秀")
else:
    print("不及格")
    if s > 50:
        print("你的分数在60分左右")
    else:
        print("你的分数低于50分")

3. 列表

  • append():向列表中添加对象,并添加到末尾
  • extend(可选代对象):将可选代对象中数据分别添加到列表中,并添加到末尾
  • Insert(下标对象):向指定下标位置添加对象
  • clear():清空列表
  • pop():删除下标指定的元素,如果不加下标则删除最后一个元素
  • remove(对象):删除指定的对象
  • del:删除变量或指定下表的值
  • copy():浅拷贝
  • count(对象):返回对象在列表中出现的次数
  • Index(value,开始下标,结束下标):元素出现的第一次下标位置,也可自定义范围
  • reverse():原地翻转
  • sort (key=None,reverse=False):快速排序,默认从小到大排序,key:算法
  • len():获取列表的长度(元素)

案例:判断6这个数在列表[1,2,2,3,6,4,5,6,8,9,78,564,456]中的位置,并输出其下标。

l = [1,2,2,3,6,4,5,6,8,9,78,564,456]
n = l.index(6, 0, 9)
print(n)

#输出结果为  4

4. 元组

  • list(元祖):元祖转换成列表
  • tuple (列表):列表转换成元祖
  • 元祖的函数操作与列表大致相同相同,不述

案例:修改元组

#取元组下标在1~4之间的3个数,转换成列表
t = (1,2,3,4,5)
print(t[1:4])
l = list(t)
print(l)
#在列表下标为2的位置插入1个6
l[2]=6
print(l)
#讲修改后的列表转换成元组并输出
t=tuple(l)
print(t)

#运行结果为:

(2, 3, 4)
[1, 2, 3, 4, 5]
[1, 2, 6, 4, 5]
(1, 2, 6, 4, 5)

5. 字符串

  • capitalize():把字符串的菊一个字符改为大写,后面的小写
  • casefold():把整个字符串都小写
  • encode():编码str-bytes(二进制字符串)
  • decode():解码
  • count(sub,start,stop):返回字符(sub)出现的次数,star:开始下标,stop结束下标
  • find(sub,start,stop):返回sub第一次出现的下标查不到返回-1
  • index(sub,start,stop):返回sub第一次出现的下标
  • upper():将字符串转为大写
  • lower():将字符串转为小写
  • fomat ():将字符申按某种格式输出

案例:用format()的三种方式输出字符串

方式1:用数字占位(下标)

"{0} 嘿嘿".format("Python")
a=100
s = "{0}{1}{2} 嘿嘿"
s2 = s.format(a,"JAVA","C++")
print(s2)

#运行结果为:100JAVAC++ 嘿嘿

方式2:用{} 占位

a=100
s = "{}{}{} 嘿嘿"
s2 = s.format(a,"JAVA","C++","C# ")
print(s2)

#运行结果为:100JAVAC++ 嘿嘿

方式3:用字母占位

s = "{a}{b}{c} 嘿嘿"
s2 = s.format(b="JAVA",a="C++",c="C# ")
print(s2)

#运行结果为:C++JAVAC#  嘿嘿

6. 字典

  • clear():清空字典
  • copy():浅拷贝
  • fromkeys(可迭f代对象,value=None):根据可迭代对象中的元素去创建字典
  • get(key,[d]):获取键所对应的值,key是键,d是提示信息
  • items():将字典中的键值对封装成元组并放到类集合中
  • pop(key.[d]):根据健删除字典中的健值对,key是键,d是提示信息
  • values():返回字典中的值(类集合对象)

案例:在字典中查找数据

d = {"name": "小黑"}
print(d.get("name2", "没有查到"))
print(d.get("name"))

#运行结果为:
没有查到
小黑

7. 函数

函数这块重头戏更多的是自定义函数,常用的内置函数不是很多,主要有以下几个:

  • 函数名.doc:获取函数的文档内容
  • help(函数名):查看函数文档
  • global变量:声明变量为全局变量(可用于任何地方)
  • nonlocal变量:声明的变量为全局变量(用于函数嵌套,变量存在于上一级函数)

案例:在函数中定义一个局部变量,跳出函数仍能调用该变量

def fun1():
    global b
    b=100
    print(b)
fun1()
print(b)

#运行结果为:
100
100

8. 进程和线程

  • os.getpid():获取当前进程的编号
  • C2,multiprocessing.current_process():获取当前进程的名字
  • os.getppid():获取当前父进程的编号
  • Thread(target=None,name=None,args=0),kwargs=None):target:可执行目标,name:线程的名字默认Thread-N,args/kwargs:目标参数
  • start():启动子线程,threadling.current_thread(),获取当前进程的名字

案例:继承Thread类实现

#多线程的创建
class MyThread(threading.Thread):
    def __init__(self,name):
        super().__init__()
        self.name = name
    def run(self):
        #线程要做的事情
        for i in range(5):
            print(self.name)
            time.sleep(0.2)
 #实例化子线程
t1 = MyThread("凉凉")
t2 = MyThread("最亲的人")

t1.start()
t2.start()

9. 模块与包

  • import模块名:导入模块
  • from模块名Import功能1,功能2..:导入模块特定功能
  • from模块名import*:导入模块所有功能
  • import 模块名as别名:模块定义别名
  • from模块名import 功能as别名:功能定义别名
  • import包名.横块名.目标:包的导入方式1
  • import包名.子包名.模块名.目标:包的导入方式2
  • import包名.损块名:包的使用形式1
  • import 包名.模块名as别名:包的使用形式2
  • from包名.模块名Import 功能:包的使用形式3
  • from包名import模块名:包的使用形式4
  • from包名.模块名import:包的使用形式5

案例:包的使用方式4

from my_package1 import my_module3
print(my_module3.a)
my_module3.fun4()

10. 文件操作

(1)常规文件操作

  • open(name,mode):用于打开一个文件,返回一个文件对象,name:文件名,-写全(文件路径+文件名+后缀),mode:打开文件的方式,默认是r-只读
  • write("xxx"):向文件中写入内容
  • read():读取文件中的内容
  • close():关闭文件

关于文件操作的常规模式:

  • r:以只读的形式打开文件,文件的指针在开头
  • r+:读写,文件指针在开头
  • rb:以二进制的形式只读文件指针在开头
  • w:只写,文件不存在,则创建新的,存在则覆盖,指针在开头
  • w+:读写,文件不存在,则创建新的,存在则覆盖,指针在开头
  • wb:只写,以二进制的形式
  • a:追加模式,文件指针在结尾
  • a+:读写,不存在则创建,存在直接追加
  • ab:以二进制形式追加

file的对象属性:

  • closed:如果文件对象已关闭,返回True,否则返回False
  • mode:返回文件对象的访问模式
  • name:返回文件的名称

file对象的方法:

  • close():关闭文件
  • read([count]):读取文件中的内容,count:字节数量
  • readllnes():读取所有内容,打包成列表
  • readine():读取一行数据,追加读取,读取过得不能再次读取
  • seek (offset, [from]):修改指t的位置:从from位置移动了ollset个字节,from:0-从起始位置,1-从当前位置开始,2-从末尾开始,sootset:要移动的字节数
  • write():向文件中写入内容

(2)OS模块

关于文件的功能:

  • os.rename(原文件名,新的文件名):文件重命名
  • os.remove(文件名):删除文件

关于文件夹的功能:

  • mkdir(文件夹名字):创建文件夹
  • mdir(文件夹名字):删除文件夹
  • getcwd():获取当前目录
  • chdr(目录):切换目录
  • listdir():获取当前文件夹下所有文件或文件夹,返回一个列表,llstdir('aa')#获取aa文件下所有文件或文件夹,返回一个列表

11. 修饰器/装饰器

  • property:将方法变为属性,被修饰的方法名必须和property下方的方法名一样
  • staticmethod:静态方法,将被修饰的方法从类中抽离出来,该函数不能访问类的属性
  • classmethod:与实例方法的区别是接收的苗一个参数不是self,而是cls(当前类的具体类型),被修饰的方法无法访问实例属性,但是可以访问类属性

案例:classmethod的用法举例

class B:
    age = 10
    def __init__(self,name):
        self.name = name
    @classmethod
    def eat(cls): #普通函数
        print(cls.age)

    def sleep(self):
        print(self)

b = B("小贱人")
b.eat()

#运行结果为:10

12. 正则

  • re.complle(正则表达式):编译正则
  • match():决定re是否在字符申刚开始的位置(匹配行首)
  • search():扫描字符串,找到这个re匹配的位置(仅仅是第一个查到的)
  • findal():找到re匹配的所有字符串,返回一个列表
  • group():返回re匹配的字符串
  • start():返回匹配开始的位置
  • end():返回匹配结束的位置
  • span():返回一个元组:(开始结束)的位置
  • findall():根据正则表达式返回匹配到的所有字符串
  • sub(正则,新字符串,原字符串):替换字符串
  • subn(正则,新字符串,原字符串):替换字符串,并返回替换的次数
  • split():分制字符串

案例:用split()函数分割一个字符串并转换成列表

import re
s = "abcabcacc"
l = re.split("b",s)
print(l)

#运行结果为:['a', 'ca', 'cacc']

由于Python的库和函数非常丰富,初学者很难一次性掌握所有常用函数。建议从基础开始,逐步深入学习,并结合实际项目练习,以加深理解和记忆。同时,参考官方文档和权威教程也是提升学习效率的有效途径。

结语

这篇文章的目的,不是为了教大家怎么使用函数,而是为了快速、便捷地记住常用的函数名,所以没有把每个函数的用法都给大家举例,你只有记住了函数名字和它的作用之后,你才会有头绪,至于函数的用法,百度一下就出来,用了几次你就会了。

如果连函数名和它的用途都不知道,你要花的时间和精力就更多了,必然不如我们带着目的性地去查资料会更快些。

关于Python技术储备

学好 Python 不论是就业还是做副业赚钱都不错,但要学会 Python 还是要有一个学习规划。最后大家分享一份全套的 Python 学习资料,给那些想学习 Python 的小伙伴们一点帮助!

整理出了一套系统的学习路线,这套资料涵盖了诸多学习内容:开发工具,基础视频教程,项目实战源码,51本电子书籍,100道练习题等。相信可以帮助大家在最短的时间内,能达到事半功倍效果,用来复习也是非常不错的。

👉Python学习路线汇总👈

Python所有方向的技术点做的整理,形成各个领域的知识点汇总,它的用处就在于,你可以按照上面的知识点去找对应的学习资源,保证自己学得较为全面。

👉Python必备开发工具👈

👉Python学习视频合集👈

观看零基础学习视频,看视频学习是最快捷也是最有效果的方式,跟着视频中老师的思路,从基础到深入,还是很容易入门的。

👉实战案例👈

光学理论是没用的,要学会跟着一起敲,要动手实操,才能将自己的所学运用到实际当中去,这时候可以搞点实战案例来学习。

👉100道Python练习题👈

检查学习结果。

👉面试刷题👈

资料获取方式:↓↓↓↓
1.关注公众号:萧晓编程百事通
2.在后台发送:“学习” 即可免费领取

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 204,293评论 6 478
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 85,604评论 2 381
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 150,958评论 0 337
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,729评论 1 277
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,719评论 5 366
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,630评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 38,000评论 3 397
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,665评论 0 258
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,909评论 1 299
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,646评论 2 321
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,726评论 1 330
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,400评论 4 321
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,986评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,959评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,197评论 1 260
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 44,996评论 2 349
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,481评论 2 342

推荐阅读更多精彩内容