首页 > 编程语言 >Python 变量与函数

Python 变量与函数

时间:2023-11-24 14:35:03浏览次数:42  
标签:语句 body return 变量 Python print 函数

Task 3 变量与函数

变量

  • 变量是一个名字,他所指的是一段数据

  • 使用 = 来对这段区域进行复制

x = 5
print(x)
print(x*2)
  • 新的值会覆盖旧的值

  • 新的值的数据类型不必与旧的值的数据类型相同

y = 10
print(y - 2)
y = True
print(y)

运行结果:image-20231122175855073

变量命名规则

  • 必须以字母或者下划线(_)开头

  • 明明可有字母、数字、下划线组成

  • 大小写敏感

  • 尽量避免使用保留字命名

image-20231122180327092

更新变量

x = 7
x += 2
print(x)

运行结果:9

换成其他运算符也是如此

x = 10
x //= 5
print(x)

运行结果:0

多变量赋值

a = b = c = 2
print(f"a = {a},b = {b},c = {c}")

image-20231122180741219

a, b, c = 1, 2, 6
print(f"a = {a},b = {b},c = {c}")

image-20231122180921800

变量作用域

  • 每个变量都有属于自己的作用范围

  • 超出作用范围后,变量不可见

image-20231123133542247

函数内的变量有 局部作用域,它只存在于函数内部,与其他函数中同名的变量无关

当在函数外部定义变量时,变量具有全局作用域,在任何地方都可以使用

但是我们应该尽量避免使用全局作用域,但是在一些非常少的场合会用到它

函数

  • 函数是一个名字,代表一串代码序列(流程,过程)

  • 函数有俩个部分组成 headerbody * header用于定义函数接口(流程、过程) * body包含函数所需要执行的操作

header

header 用于定义函数的名称参数

  • 当函数被调用时,参数将会作为变量被提供给函数的 body 部分

  • 可以提供多个参数(用逗号 , 分隔),也可以不提供参数(0 个)

  • header 以冒号(:)结尾,代表后面会跟着 body 部分

函数header的写法:

def 函数名(形式参数):
#body

body

body包含函数执行的语句

  • 语句需要缩进

  • 当语句不在缩进,函数部分结束

  • 一般会使用 return 语句让函数返回一个结果,但是不是必须的

类似于用一个=来对多个变量赋值,函数的返回结果也可以不止一个(用,分隔)

def double(x):
print("我在一个 `double`的语句中")
return 2 * x
  • 我们使用函数名来调用函数

  • 函数名后紧跟一对括号

  • 括号中是我们设定的参数值,一个不多,一个不少(这很重要)

  • 函数会返回设定的 return 的返回值

print(double(2))  #会打印出4

函数也可以有任意多个参数,也可以一个都没有

def f(x, y, z):
return x+y+z
print(f(1,2,3))   #会打印出6
def g():
return 42
print(g())   #会打印出42

可是如果参数数目没有匹配的话程序就会崩溃

多返回值

def f():
return 9,3,4
a, b, c = f()
print(f"a 的值为{a},b的值为{b},c的值为{c}")

image-20231123131738940

语句与表达式

对于表达式

  • 它的本身是值

  • 他的计算结果也是值

对于语句

  • 他不是值

  • 他不能打印

  • 但他能执行一些操作

python中只能print值或者表达式,如果你能用print()输出它,那它就是表达式

image-20231123132317192

image-20231123132438987

类型转换

隐式类型转换

image-20231115150750064

上边就是一个隐式的转换

但是如果想用print计算一个int型的加上一个字符串的话,隐式转换就不再适用了

显示类型转换

int() 强制转换为整型:

image-20231115151138196

float() 强制转换为浮点型:

image-20231115151322780

str() 强制转换为字符串类型:

image-20231115192520630

注意事项:在强制类型转换这部分中,只能以上述形式写出来,不能用print打印,例如:x = str('s1')这种写法是错误的

一些基本的数学函数

#这些函数存储的math库中
print(abs(5)) #绝对值为5
print(min(2,3)) #最小值为2
print(max(2,3)) #最大值为3
print(pow(2,10)) #代表的是次方运算,即2的10次方
print(rpund(2.345,2))#类似于四舍五入,并不是完全的四舍五入,去最近的整数,二进制精度丢失

image-20231114143506427

每个变量都有作用范围,超出范围以后就不能再作用了

返回语句

一旦返回,函数会立即结束

没有返回语句时,函数会返回空值

image-20231123134406732

像在第一个函数中就是没有返回语句,那么就会返回None

在第二个函数中,返回的是一个布尔类型的,因此会返回True

return与print的区别

image-20231114150625633

像在第一个函数里边,不仅会输出想要求的内容,而且还会返回一个空值,有点奇怪

正确的应该是第一个函数中写到的


编写函数是用来解决问题的,我们也可以封装一些函数用来存储一些常用的操作

这种函数叫做Helper Functions

def onesDigit(n):
   return n%10

def largerOnesDigit(x, y):
   return max(onesDigit(x), onesDigit(y))

print(largerOnesDigit(134, 672)) # 4
print(largerOnesDigit(132, 674)) # 依然是 4

image-20231123135122141

[递归 & 分治 - OI Wiki (oi-wiki.org)]

标签:语句,body,return,变量,Python,print,函数
From: https://www.cnblogs.com/Zhang-xy-2006/p/17853654.html

相关文章

  • Excel表格函数公式出现溢出怎么办?
    Excel是一款广泛使用的电子表格软件,它可以帮助我们进行各种计算、数据分析与处理等操作。在使用Excel时,我们通常需要使用到各种函数公式来完成不同的任务。然而,在使用函数公式时有时会出现“溢出”(Overflow)的问题,这个问题会导致计算结果不正确,甚至无法计算。那么,Excel表格函数公式......
  • python 题目:数字比较。
    #!/usr/bin/python#-*-coding:UTF-8-*- if __name__ == '__main__':  i = 10  j = 20   if i > j:     print ('%d大于%d' % (i,j))   elif i == j:     print ('%d等于%d' % (i,j))   elif i < j:   ......
  • 面向对象基础,定义类和对象(构造函数)
    类和对象的定义类:就是具有相同属性和功能的一类事物--抽象对象:就是类的具体表现形式--具体表现类的语法class类名:属性(类中定义的变量)方法(类中定义的函数)class:类的关键字类名:首字母大写,其他部分遵循驼峰命名原则属性:符合标识符命名规则方法:函数,见名知意,符合标识符命名规则......
  • 无涯教程-Tk - Entry部件函数
    输入窗口小部件用于接受一行文本作为输入。在所有Tk应用程序中,几乎都必须获得用户输入。条目小部件的语法如下所示-entryentryNameoptionsEntry-参数下表中列出了条目小部件可用的选项-Sr.No.Syntax&Remark1-backgroundcolor用于设置小部件的背景颜色。2-bo......
  • 六大类型常用函数及详解
    一、数字类型(一)含义概念Python数字数据类型用于存储数值。数据类型是不允许改变的,这就意味着如果改变数字数据类型的值,将重新分配内存空间。以下实例在变量赋值时Number对象将被创建:var1=1var2=10Python支持三种不同的数值类型:整型(int)-通常被称为是整型或整......
  • 代码随想训练营第四十二天(Python)| 0-1 背包基础、416. 分割等和子集
    [背包基础]题目:有n件物品和一个最多能背重量为w的背包。第i件物品的重量是weight[i],得到的价值是value[i]。每件物品只能用一次,求解将哪些物品装入背包里物品价值总和最大。1、二维方式解决背包问题classSolution:defsolve_bag(self,weight,value,bag_weight):......
  • 无涯教程-Tcl - continue语句函数
    Tcl语言中的continue语句的工作原理与break语句类似。但是,continue不是强制终止,而是强制循环的下一次迭代发生,从而跳过两者之间的任何代码。continuestatement-语法Tcl中continue语句的语法如下-continue;continuestatement-流程图continuestatement-示例......
  • Python + BeautifulSoup 采集
    Python是一种非常流行的编程语言,也是开发网络爬虫和数据采集工具的首选语言。在Python中,有许多第三方库可以用于网络爬虫和数据采集,比如requests、beautifulsoup4、selenium等。下面是一个简单的例子,使用requests库采集一个网页:importrequests#发送GET请求response=......
  • GPT实现的企业信用代码校验函数
    functionValidateEnterpriseCode(EnterpriseCode:string):Boolean;vari,sum,code,weight:Integer;beginResult:=False;//企业信用代码长度校验ifLength(EnterpriseCode)<>18thenExit;//企业信用代码权重因子constfactor:array......
  • 代码随想训练营第四十一天(Python)| 不同的二叉树搜索树
    96.不同的二叉搜索树1、关键点找出状态转移方程classSolution:defnumTrees(self,n:int)->int:#创建dp数组,dp[i]代表节点数为i的二叉搜索树数量dp=[0]*(n+1)#初始化数组dp[0]=1#遍历每个元素作为根节点......