python学习挑战(3)

目录

1.示例怼脸

2.def语句和参数

3.局部作用域和全局作用域 

3.1局部变量不能在全局作用域中使用

3.2局部作用域不能使用于其他局部作用域内的变量



学习的最大理由是想摆脱平庸,早一天就多一份人生的精彩;迟一天就多一天平庸的困扰。各位小伙伴,如果您:

想系统/深入学习某技术知识点…
一个人摸索学习很难坚持,想组团高效学习…
想写博客但无从下手,急需写作干货注入能量…
热爱写作,愿意让自己成为更好的人…



  1. def Hello():
  2. print("Everyone!")
  3. print("Everyone!!!")
  4. print("Hello everyone!!!")
  5. hello()
  6. hello()
  7. hello()

输出如下

 如果不采用函数,则需用print多行输入,或者建立一个循环来实现。

一般来说,我们应该是避免使用ctrl c ctrl v,随着编程经验的增加,我们会发现,复杂的代码可能看起来很帅,但简洁的代码真的很惹人喜爱。

2.def语句和参数

  1. def hello(name)://def为自定义函数命令
  2. print("Hello " + name + " !")
  3. hello("Lucy")
  4. hello("Judi")

输出

 值得注意的是,在函数执行过程中,虽然程序在执行上面的代码时分别隐含了name  = Lucy,name  = Judi.的语句,但是实际上,程序并没有创建name这个变量,如图

这涉及到局部作用域和全局作用域 

3.局部作用域和全局作用域 

3.1局部变量不能在全局作用域中使用

如上述命令中,name 并没有被赋值,即在全局作用域中,name变量是不存在的,但是在函数hello()的局部作用域中,name是可以被任意赋值的。

3.2局部作用域不能使用于其他局部作用域内的变量

例如:

 开始的时候,number()函数被调用,创建了一个局部作用域,局部变量number被赋值为99,然后infoq()函数被调用,(infoq打钱)。

然后infoq函数被调用,创建第二个局部作用域,多个局部作用域能同时存在,局部变量被赋值为101

但是当infoq()返回时,在它本身定义域中所进行的number定义的赋值将被销毁

在number 作用域中的infoq作用域结束并销毁自身定义的临时变量时,程序依旧运行在number的作用域中,所以返回依旧是99.

全部评论
学习让人生多一份精彩
点赞 回复 分享
发布于 2022-08-28 17:52 河南

相关推荐

在等offer的火锅...:我去履历这么好,都找不到工作吗?
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务