ccbyoujian 发表于 2023-10-22 03:14:01

如何最简单、通俗地理解Python的函数?

如何最简单、通俗地理解Python的函数?

f430gt3gfb 发表于 2023-10-22 03:14:44

千锋教育:Python程序员必须吃透的100个函数,建议收藏!
新手在做写代码的时候容易卡壳,尤其当接触的函数以及其他知识比较多的时候,经常会看完需求之后不知道自己该用什么方法来实现它,实现的逻辑可能你有,但怎么该用什么函数给忘了,这其实就是知识的储备不够,你记不住哪个函数有什么作用,自然一头雾水。
这几天我专门整理了Python常用的一些函数,从最基础的输入输出函数到正则等12个板块的,总共100多个常用函数,方便小伙伴们进行快速地记忆,每天快速过一遍,用的时候再加深一下,慢慢地你就会摆脱写代码卡壳的状况。
虽说自学编程的时候我们强调更多的东西是理解和实际去敲代码,但有些东西你是要必须牢记的,否则你写代码将寸步难行。老手当然已经烂记于心,新手想要快速得心应手开发,记住高频使用的函数就是一个好法子。
1.基础函数


http://picx.zhimg.com/v2-c300017a9dd365002b53cbc8a16e4c6e_r.jpg?source=1940ef5c
案例:将浮点型数值转换为字符串,输出转换后的数据类型
f = 30.5
ff = str(f)
print(type(ff))

#输出结果为 class 'str'2.流程控制


http://picx.zhimg.com/v2-a56720064c7a055a3d514f08c54fdb2a_r.jpg?source=1940ef5c
案例:根据用户输入的分数判断成绩,低于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.列表


http://picx.zhimg.com/v2-182dbf70a5f0f1c637eb17e72806abc4_r.jpg?source=1940ef5c
案例:判断6这个数在列表中的位置,并输出其下标。
l =
n = l.index(6, 0, 9)
print(n)

#输出结果为44.元组


http://pica.zhimg.com/v2-226ed836d520a78a1ffedbddc374cda8_r.jpg?source=1940ef5c
案例:修改元组 #取元组下标在1~4之间的3个数,转换成列表
t = (1,2,3,4,5)
print(t)
l = list(t)
print(l)
#在列表下标为2的位置插入1个6
l=6
print(l)
#讲修改后的列表转换成元组并输出
t=tuple(l)
print(t)

#运行结果为:

(2, 3, 4)


(1, 2, 6, 4, 5)5.字符串


http://pic1.zhimg.com/v2-850b59f87521b2ae1ba577b76c00bf67_r.jpg?source=1940ef5c
案例:用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.字典


http://pic1.zhimg.com/v2-72edbc1a73c94227ab45b9c3cddcf003_r.jpg?source=1940ef5c
案例:在字典中查找数据
d = {"name": "小黑"}
print(d.get("name2", "没有查到"))
print(d.get("name"))

#运行结果为:
没有查到
小黑7.函数

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

http://picx.zhimg.com/v2-8e68fc6ec0c0247befdd884be9318e2b_r.jpg?source=1940ef5c
案例:在函数中定义一个局部变量,跳出函数仍能调用该变量
def fun1():
    global b
    b=100
    print(b)
fun1()
print(b)

#运行结果为:
100
1008.进程和线程


http://picx.zhimg.com/v2-88df091170a369bb27e5a735b67346a3_r.jpg?source=1940ef5c
案例:继承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.模块与包


http://pica.zhimg.com/v2-b3c0e78aa634200f6889e2e7e08224f4_r.jpg?source=1940ef5c
案例:包的使用方式4
from my_package1 import my_module3
print(my_module3.a)
my_module3.fun4()10.文件操作

(1)常规文件操作

http://picx.zhimg.com/v2-535b000c3f9f4b68d7b0fa037a10518c_r.jpg?source=1940ef5c
关于文件操作的常规模式:

http://pic1.zhimg.com/v2-d57864336193531cb48721148ad0b15c_r.jpg?source=1940ef5c
file的对象属性

http://picx.zhimg.com/v2-6479f6a23c1bfbc52343da07064c1e62_r.jpg?source=1940ef5c
file对象的方法

http://picx.zhimg.com/v2-d03b7981e66b64c5321746fc17b0e067_r.jpg?source=1940ef5c
(2)OS模块
关于文件的功能

http://picx.zhimg.com/v2-11afad76f5a6ffd3de553031043940ea_r.jpg?source=1940ef5c
关于文件夹的功能

http://pica.zhimg.com/v2-b963f1f1b5c20604eb5cbcba3e68e790_r.jpg?source=1940ef5c
11.修饰器/装饰器


http://pic1.zhimg.com/v2-734fdec9af3548498290adeaa61431f2_r.jpg?source=1940ef5c
案例: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()

#运行结果为:1012.正则


http://picx.zhimg.com/v2-9521f63114605ab1120e3cc8ad0a48f2_r.jpg?source=1940ef5c
案例:用split()函数分割一个字符串并转换成列表
import re
s = "abcabcacc"
l = re.split("b",s)
print(l)

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

这篇文章的目的,不是为了教大家怎么使用函数,而是为了快速、便捷地记住常用的函数名,所以没有把每个函数的用法都给大家举例,你只有记住了函数名字和它的作用之后,你才会有头绪,至于函数的用法,百度一下就出来,用了几次你就会了。
如果连函数名和它的用途都不知道,你要花的时间和精力就更多了,必然不如我们带着目的性地去查资料会更快些。

VIVIANY 发表于 2023-10-22 03:15:24

定义:函数是组织好的,可重复使用的用来实现单一,或相关联功能的代码段。
概括就是:设定好的功能代码。
Python提供了许多内置函数,比如print(),input(),round()等。但除了这些内置函数以外,python中还可以设定算法,即设置自定义函数。
用一些符号代替变量赋值,等到使用这个算法的时候再把具体的变量金额填充进去,那么就能改成一个通用的算法,这个过程就叫自定义函数。代替变量叫形参,使用算法叫调用参数,调用函数时填充的具体金额叫实参 。
自定义函数语法如下:
def函数名(形参): #形参根据需求设置,可有可无,也可设置多个形参
<代码块>#注意冒号及语句缩进
return 表达式#return语句不写时,没有返回值
函数名(实参)#调用函数
如果还有地方不明白,欢迎随时戳我 @财码Python ~

dodolook 发表于 2023-10-22 03:15:38

1. 函数

① 函数是组织好的,可重复使用的。
② 定义函数代码块以 def 关键词开头、后接函数标识符名称和圆括号()。
③ 函数内容以冒号、缩进开始。
# def 定义 printname() 函数
def printname():            
    print("我是宝贝入怀")   

printname()    # 调用 printname() 函数运行结果:

[*]我是宝贝入怀
④ 任何自变量、传入参数必须放在函数名后圆括号内。
# 定义 printname(name) 函数
def printname(name):   # 传入参数放在括号中
    print("我的知乎ID是:%s" %name)   

printname('宝贝入怀')    # 调用 printname() 函数运行结果:

[*]我的知乎ID是:宝贝入怀
[ 完 ]
[ Python 其他笔记,见 "我的主页→专栏" ]
<hr/>2. 分享经验

目前,使用Python两年了,分享一点自己的经验
2.1 学习

① 找手撕代码的视频,一句一句写代码,还讲自己是如何思考的视频,不要找老师直接讲一套写好了的代码的视频。
② 找点击量比较高的老师(群众的眼睛是雪亮的),代表优秀的教学,但是要找适合自己的老师(能激发你学计算机兴趣的老师)。
③ 不管多简单的程序都要自己打一下,看一遍依旧是别人的,做了一遍,才是自己的。只有做一遍才会获得经验,"模仿+总结" 是学习非常快的方法。
2.2 验证

① 我学Python的时候,有时候代码会报错,就主动调试代码,打印变量的值,通过变量值是否符合自己的预期,让自己知道该段程序是否正常运行,从而确定报错的位置和原因。
② 我加了一些Python学习微信群,我有些知识点(or代码)不懂的时候,我就问她们,然后把她们的阐述,组织语言、逻辑,反述出来,这样吸收率非常高。
③ 学习路上经常会碰到疑惑的问题,碰到不懂的问题,搜索相关信息,有一个猜想,然后请教别人来验证猜想,不让别人灌输知识。 别人灌输的,记不牢;验证后的记得牢,并且有成就感。
2.3 大忌

① 学Python的大忌:学到某个知识点,发现有点晦涩难懂,就不继续往前学,不停的反复琢磨其中的原理。
② 如果已经实现了需求,但是不是很理解其中的原理,先尽量理解原理,如果不理解,继续往前学,因为有些原理是通过后面的知识进行理解的,全部学完后会发现有些以前不懂的豁然开朗。
2.4 讲解

① 如果一个问题,能给别人讲的非常清晰明了,这才说明自己是真的懂了,而且讲解完后这个知识点会记得非常深刻。
② 举个例子,别人问自己一道题目(或知识点),虽然自己以前没有遇到过这道题,但是自己把它做出来了,并且给别人讲清楚了,那么自己这道题里面的知识点会理解的很透彻、记得非常深刻。
<hr/>"♥我的分享,希望对你有帮助♥"


http://picx.zhimg.com/v2-f88cae86e7097a05e05a300441d6bca2_r.jpg?source=1940ef5c
<hr/>全套笔记


[*]https://github.com/AccumulateMore/Python:最全面的 Python 笔记

heyond 发表于 2023-10-22 03:15:45

你一定买过手机,那么你大概也知道国内的几个手机厂商,比如华为,小米,oppo等。你也大概知道,他们每次市场和宣传的时候会有这样的话术:索尼镜头,高通cpu,三星屏幕。。。
那么索尼镜头,高通cpu,三星屏幕就类似于函数。
把你(开发者)比做小米,你不会从设计和生产镜头,自研cpu开始,而是直接把市场上的已有模块直接拿来就用。那么这些模块就类似于函数的作用。
有了函数,你就不用从0开始研发,而且一个函数开发之后,谁都能用。
所以,当华为被制裁后,cpu直接无法生产,原因就是他们用的美国的芯片。芯片也就是函数的意义。
页: [1]
查看完整版本: 如何最简单、通俗地理解Python的函数?