def test1():
return 123
test和test()的区别?
test是函数
test()是函数的返回值
每个函数都有返回值,如果没有定义则为None
print(test())-----函数没有返回值,因此输出为None,相当于Java里的Null
print(test)-----输出函数本身<function test at 0x0000017A279BF040>
fn=test-----把test方法赋值给fn
fn()-----输出hello world
和Java不同,python没有重载(同名不同参)
def test1():
print("hello world")
# 一个函数和一个代码之间要隔两行代码
def test1(name:str):
print(name)
test1(“jack”)
test1()
上面的代码运行会报错,test1缺少必须的name参数
修改
def test1(name:str=‘jack’):
print(name)
控制台输出jack
3,函数参数
=======
**语法,def 函数名(参数名1,参数名2):
代码**
调用有参的函数,参数名(参数值1,参数值2)
**形参:参数名1,参数名2
实参:参数值1,参数值2**
def fn1(a:int,b:int):
print(a+b)
def fn1(a:int,b:int):
print(a\*\*b)
# 默认值参数必须在最后
def fn1(b:int,a:int=2):
print(a+b)
fn1(2,3) 输出5
fn1(b=2,a=3) 输出5
fn1(2) 输出4
# 形参和实参
# a,b就是形参,定义了但是没有具体值
def test(a,b):
pass
# 实参
test(1,2)
# 形参和实参是通过位置来对应的
# 形参位置倒换
test(a=1,b=2)
4,参数的传递方式
=========
①位置参数
调用函数时根据函数定义的参数位置来传递参数
注意:传递和定义参数的顺序及个数必须一致
两个参数比较大小
def max(a,b):
return a if a>b else b
print(max(1,2))
②不定长参数(可变参数,用于调用时不确定参数的个数)
**包裹位置传递,语法,def 函数名(*args):
代码**
函数返回值为:元组
**包裹关键字传递,语法,def 函数名(**kwargs):
代码**
函数返回值为:字典
多个参数,
java中 public void add(int …is)
python中的可变参数,一个*号,代表可变参数
def max(*ns):
print(ns)
max(1,2,3,4,5,6,7,8)
控制台输出(1, 2, 3, 4, 5, 6, 7, 8),说明放在元组中
# 接收到字典类型dict—map
def show(**ps):
# print(ps)
**#字典取键**
for i in ps.keys():
print(type(i))
**# 字典取值**
for i in ps.values():
print(type(i))
** # 取元组**
for i in ps.items():
print(type(i))
**# 取键和值**
for i in ps.items():
print(i\[0\],i\[1\])
show(name=1,sex=‘男’,age=12)
控制台输出
<class ‘str’>
<class ‘str’>
<class ‘str’>
<class ‘int’>
<class ‘str’>
<class ‘int’>
<class ‘tuple’>
<class ‘tuple’>
<class ‘tuple’>
name 1
sex 男
age 12
5,函数的返回值,递归
===========
**返回单个值,语法,def 函数名(参数名1,参数名2):
return 结果**
调用 变量名接受 = 函数名(参数值1,参数值2)
**返回多个值,语法,def 函数名(参数名1,参数名2):
return 结果1,结果2**
递归,函数内部,自己调用自己
def max(*ns):
my\_sum=0
my\_max = ns\[0\]
my\_min = ns\[0\]
for i in ns:
my\_sum+=i
if i>my\_max:
自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。
深知大多数Python工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则几千的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!
因此收集整理了一份《2024年Python开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。
既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上Python开发知识点,真正体系化!
由于文件比较大,这里只是将部分目录大纲截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且后续会持续更新
如果你觉得这些内容对你有帮助,可以添加V获取:vip1024c (备注Python)
(1)Python所有方向的学习路线(新版)
这是我花了几天的时间去把Python所有方向的技术点做的整理,形成各个领域的知识点汇总,它的用处就在于,你可以按照上面的知识点去找对应的学习资源,保证自己学得较为全面。
最近我才对这些路线做了一下新的更新,知识体系更全面了。
(2)Python学习视频
包含了Python入门、爬虫、数据分析和web开发的学习视频,总共100多个,虽然没有那么全面,但是对于入门来说是没问题的,学完这些之后,你可以按照我上面的学习路线去网上找其他的知识资源进行进阶。
(3)100多个练手项目
我们在看视频学习的时候,不能光动眼动脑不动手,比较科学的学习方法是在理解之后运用它们,这时候练手项目就很适合了,只是里面的项目比较多,水平也是参差不齐,大家可以挑自己能做的项目去练练。
一个人可以走的很快,但一群人才能走的更远。不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎扫码加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!
行进阶。
(3)100多个练手项目
我们在看视频学习的时候,不能光动眼动脑不动手,比较科学的学习方法是在理解之后运用它们,这时候练手项目就很适合了,只是里面的项目比较多,水平也是参差不齐,大家可以挑自己能做的项目去练练。
一个人可以走的很快,但一群人才能走的更远。不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎扫码加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!
[外链图片转存中…(img-zKhRJcLC-1712705242435)]