96SEO 2026-02-20 10:31 19
前面已经介绍了Python中函数的参数类型见下文。

Python学习-----函数1.0函数的定义和函数的参数_守约斯维奇的博客-CSDN博客
这一节我会进一步去讲解Python中的函数从对象、名称空间、作用域去讲解看正文。
前面我们学习了关于Python中的变量类型例如int、str、bool、list等等……其实函数我们可以去理解为一种更加高级的变量类型也就是函数对象其实是一个更加高级的变量容器我们可以去把函数对象当做一个变量去使用。
一个函数对象的形成是先定义一个函数然后写入函数体最后把这个函数赋值给一个变量也就是函数的对象然后我们可以去通过这个函数变量来实现函数相应的功能。
先赋值再调用
这个写法是定义了一个kun在变量作为fun函数的对象我们可以去通过这个对象去处理这个函数的返回值。
这里先定义一个kun变量为fun的函数对象下面如果要去调用这个函数的话就必须加上括号如果没有括号那这个对象只是函数的地址。
函数的返回值是一种变量类型同时序列可以储存变量所以函数是可以放到序列里面去
这里是fun函数返回值为ff函数实际上是经历过了fun函数的功能然后再次经历ff函数的功能最后返回的是ff函数的520故a的结果是520
数据的名称是储存到栈区而数据的内容是储存到堆区当我们要去使用数据的内容时我们可以通过数据的名称来直接去表示数据的内容也就是通过栈区去找到堆区的东西然后在堆区拿出来去使用。
栈区和堆区是有对应关系的。
http://t.csdn.cn/9plp1
所以我们定义的函数是属于局部名称空间当函数被调用完成了之后就会被销毁里面变量储存到的栈堆区都会被销毁
作用域实际上就是变量的作用范围之前我们学了C语言都知道有全局变量和局部变量比如在for循环里面里面的变量是一种局部变量我们如果在主函数外面去定义一个变量那就是全局变量。
Python也是一样的道理变量也是有相应的作用域。
而变量的作用域是由定义的位置决定的
其栈堆区是完全不一样的所以我们不可以通过局部来改变全局变量否则就报错
因为函数是放到栈堆区当函数调用完成了之后返回一个值这个函数已经被销毁了那么里面的变量也会与之销毁所以不会影响到全局变量故a的值还是15
这个函数调用完成了之后就返回一个值这个值函数内部的功能的值但是并没有对这个函数以外的值进行修改所以a的结果还是15而函数的返回值是999
因为b是一个全局变量而函数里面的b是一个重新定义的局部变量所以我们不可以去直接修改这个局部变量b因为这个b是没有初始数值的而且类型也未定所以无法进行运算处理
对于这个而言我给了函数里面b一个初始化值所以可以进行运算处理但这个b与外部全局变量的b是完全不相同是两个不同的变量
在C语言中我们可以去设置静态变量static从而使得这个变量可以在函数进行修改同样Python中可以利用关键字去修改变量的作用域把局部变量作用到全局变量或者把全局变量作用降级为局部
在函数中变量是这个函数的局部变量只仅仅作用到函数内部我们对这个变量进行修改是不会影响外面的变量的如果把这个局部变量转换为全局变量的话那么这变量就可以在函数里面进行修改而且还可以影响到外部当新定义global的变量名字与之前已有的变量名字出现重复的话新的变量内容会把之前的给覆盖掉而且新的全局变量也可以在函数内部进行修改从而影响全局。
注意事项这个关键字是作用到全局变量这个全局变量的栈堆区不会被销毁
重新定义了一个global后此时这个b已经是一个新的全局变量因为前面已经有了一个全局变量b所以这个新的全局变量会因为名字相同会把之前的全局变量b给直接覆盖掉类似于类型相同且名字相同的文件会被新的给覆盖故输出结果是新的全局变量b的结果123
前面讲到过已知一个全局变量但是我不可以在函数里面对这个全局变量进行修改而且函数里面的变量都是新的变量既是跟外面的全局变量名字一模一样但是其储存的栈堆区是完全不同的那么当我想去通过一个局部函数来修改这个全局变量的话这时候我就可以通过nonlocal关键字来进行
这个关键字是作用于嵌套函数的外部变量相较于内部函数外部函数是“全局”这个变量的栈堆区会被销毁
这里可以看出w99相对应fun1()是一个全局变量而fun1()内部的w相对应fun()是一个局部变量当我用nonlocal关键字去定义了fun()的变量w之后这个w变量已经是属于fun1()函数内部的变量这时候我们可以去修改这个w的值从而去影响外部函数最后w的返回值也就是被修改后的100
作为专业的SEO优化服务提供商,我们致力于通过科学、系统的搜索引擎优化策略,帮助企业在百度、Google等搜索引擎中获得更高的排名和流量。我们的服务涵盖网站结构优化、内容优化、技术SEO和链接建设等多个维度。
| 服务项目 | 基础套餐 | 标准套餐 | 高级定制 |
|---|---|---|---|
| 关键词优化数量 | 10-20个核心词 | 30-50个核心词+长尾词 | 80-150个全方位覆盖 |
| 内容优化 | 基础页面优化 | 全站内容优化+每月5篇原创 | 个性化内容策略+每月15篇原创 |
| 技术SEO | 基本技术检查 | 全面技术优化+移动适配 | 深度技术重构+性能优化 |
| 外链建设 | 每月5-10条 | 每月20-30条高质量外链 | 每月50+条多渠道外链 |
| 数据报告 | 月度基础报告 | 双周详细报告+分析 | 每周深度报告+策略调整 |
| 效果保障 | 3-6个月见效 | 2-4个月见效 | 1-3个月快速见效 |
我们的SEO优化服务遵循科学严谨的流程,确保每一步都基于数据分析和行业最佳实践:
全面检测网站技术问题、内容质量、竞争对手情况,制定个性化优化方案。
基于用户搜索意图和商业目标,制定全面的关键词矩阵和布局策略。
解决网站技术问题,优化网站结构,提升页面速度和移动端体验。
创作高质量原创内容,优化现有页面,建立内容更新机制。
获取高质量外部链接,建立品牌在线影响力,提升网站权威度。
持续监控排名、流量和转化数据,根据效果调整优化策略。
基于我们服务的客户数据统计,平均优化效果如下:
我们坚信,真正的SEO优化不仅仅是追求排名,而是通过提供优质内容、优化用户体验、建立网站权威,最终实现可持续的业务增长。我们的目标是与客户建立长期合作关系,共同成长。
Demand feedback