Python这些入门级的知识,你都会了吗?

149 篇文章 3 订阅
30 篇文章 0 订阅

一、Python函数是什么

函数是组织好的,可重复使用的,用来实现单一,或相关联功能的代码段。

函数能提高应用的模块性,和代码的重复利用率。你已经知道Python提供了许多内建函数,比如print()。但你也可以自己创建函数,这被叫做用户自定义函数。

二、Python函数定义

定义一个由自己想要功能的函数,以下是规则:

1、函数代码块以 def 关键词开头,后接函数标识符名称和圆括号 ()。

2、任何传入参数和自变量必须放在圆括号中间,圆括号之间可以用于定义参数。

3、函数的第一行语句可以选择性地使用文档字符串—用于存放函数说明。

4、函数内容以冒号起始,并且缩进。

5、return [表达式] 结束函数,选择性地返回一个值给调用方。不带表达式的return相当于返回 None。

三、Python函数使用

1、python中定义函数所用的关键字是def, def 函数名() : 冒号代替其他编程语言的大括号,然后换行缩进写的代码就是函数体。( ```是文档注释)

def demo01():
    '''
    打印一个简单的函数
    '''
    print("Hello!")
 
demo01()

2、函数也可以嵌套。

def demo02(name):

    def demo03(name):
        print('字母:' + name)
        
    demo03(name)
 
demo02('A')

3、python当中允许给函数的形参设置一个默认值,不传参数调用的话,就会使用默认值。

def welcome(name = 'A'):
    print("Hello !" + name)
 
welcome("B")
welcome()

打印:
Hello !B
Hello !A

4、关键字参数让你可以不需要考虑函数的参数位置,只要以键值对形式指定参数的对应形参。

def welcome(name,address):
    print("你好 {name} , 欢迎来到 {address} !")
 
welcome(address='这里',name='aaa')

5、有时需要允许用户提供任意数量的参数,函数的形参可以带个星号来接收,不管调用函数的时候传递了多少实参,都将被收集到形参这个变量当中,形参的类型是元组

def welcome(*names):
    print(names)
 
welcome('aaa','bbb','ccc','ddd')

还有一种就是带两个星号的形参,用于接收键值对形式的实参,导入到函数中的类型是字典

def welcome(**names):
    print(names)
 
welcome(name='aaa',age=20,sex='男')

6、分配参数是收集参数的相反操作,可使得一个元组或字典变量自动分配给函数中的形参。

def welcome(name,address):
    print(f"你好 {name} , 欢迎来到 {address} !")
 
a = ('aaa','这里')
welcome(*a)

7、所有的函数都是有返回值的,如果没有指定返回值,那么默认会返回None。对应其他语言中的null。

8、匿名函数,区别与正常函数定义的流程,可以直接定义一个简单的函数并把函数本身赋值给一个变量,使得这个变量可以像函数一样被调用,在python中可以用lambda关键字来申明定义一个匿名函数。

四、Python代码执行过程

源码编译为字节码(.pyc) ——> Python虚拟机 ——> 执行编译好的字节码 ——> Python虚拟机将字节码翻译成相对应的机器指令(机器码)。

程序运行时,先编译字节码并保存到内存中,当程序运行结束后,Python解释器将内存中的字节码对象写到.pyc文件中。

第二次运行时,先从硬盘中寻找.pyc文件,如果找到,就直接载入,否则再次执行上面的过程。

五、Python基本数据类型

Python常用数据类型:整型(int)、浮点型(float)、字符串(string)、空值(None)、布尔值(True和False)、复数、类、函数等。

Python中常量的命名规则,变量名全大写为常量。变量的命名遵循标识符的命名规则。

六、Python变量在内存中的存储

对象:创建数据对象时,内存中会保存对象的值,这个值就是对象自己;

引用:对象保存在内存空间,外部想要使用对象的值,就需要使用引用来操作对象。当对象的引用为0时,对象会被回收。

七、可变数据类型和不可变数据类型

1、可变数据对象:列表(list)和字典(dict)

2、不可变数据对象:整型(int)、浮点型(float)、字符串(string)和元组类型(tuple)

不可变数据类型:对象本身的值不可变,如果改变了变量的值,相当于新建了一个对象,而对于相同值的对象,在内存中只有一个对象。

可变数据类型:允许变量的值进行改变,对于变量给值的过程中,只是改变了变量的值,而不会新建一个对象,所以可变数据类型的意思就是说对一个变量进行操作时,其值是可变的,值的变化并不会引起新建对象,即地址是不会变的,只是地址中的内容变化了或者地址得到了扩充。,不过对于相同的值的不同对象,在内存中则会存在不同的对象,即每个对象都有自己的地址,相当于内存中对于同值的对象保存了多份,这里不存在引用计数,是实实在在的对象。

八、最后

作为自学过的人,我深深体会过没人带,没人问的感觉,所以我想把自己所学、实际工作中使用的技术、自学方法、心得、踩过的一些坑以及面试题都分享出来,群175317069。已经有很多同行加入群里,平时会交流一些技术问题,也可以互相介绍好的工作机会。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值