Datawhale聪明办法学Python(task3变量与函数)

news2024/9/22 13:43:57

一、课程基本结构

课程开源地址:课程简介 - 聪明办法学 Python 第二版

章节结构:

Chapter 0 安装 Installation
Chapter 1 启航 Getting Started
Chapter 2 数据类型和操作 Data Types and Operators
Chapter 3 变量与函数 Variables and Functions
Chapter 4 条件 Conditionals
Chapter 5 循环 Loop
Chapter 6 字符串 Strings

二、跟着视频学一点

本节课主要学习Python中的变量和函数,以及变量赋值和数据类型等内容。

一、变量

在Python中,变量是用来存储数据的容器,可以存储各种类型的数据,如数字、字符串、列表、元组、字典等。Python中的变量不需要事先声明,只需要直接赋值即可。例如:

x = 10 y = "Hello, World!"

在上面的代码中,我们分别定义了两个变量x和y,一个存储整数类型的数据,一个存储字符串类型的数据。Python中的变量名可以包含字母、数字和下划线,但是不能以数字开头。

Python中的变量赋值是一种动态的过程,变量的类型可以根据赋值的数据类型自动推断出来。例如:

x = 10 print(type(x)) # 输出<class 'int'> x = "Hello, World!" print(type(x)) # 输出<class 'str'>

在上面的代码中,我们先将变量x赋值为整数类型的数据10,然后输出变量x的类型,结果为int。接着,我们将变量x赋值为字符串类型的数据"Hello, World!",然后再次输出变量x的类型,结果为str。可以看到,Python中的变量类型是可以动态变化的。

二、函数

在Python中,函数是一种封装了一定功能的代码块,可以重复使用。Python中的函数定义使用关键字def,语法如下:

def function_name(parameters): # 函数体 return value

其中,function_name是函数名,parameters是函数的参数列表,函数体是函数的具体实现,return语句用于返回函数的结果。

例如,下面是一个简单的函数,用于计算两个数的和:

def add(x, y): result = x + y return result

在上面的代码中,我们定义了一个名为add的函数,它有两个参数x和y,函数体中计算了x和y的和,并将结果返回。

在Python中,函数的参数可以分为两种类型:位置参数和关键字参数。位置参数是指按照参数的位置进行传递的参数,例如:

def greet(name, age): print("Hello, my name is", name, "and I am", age, "years old.") greet("Alice", 25)

在上面的代码中,我们定义了一个名为greet的函数,它有两个位置参数name和age,函数体中输出了一句问候语。然后我们调用了这个函数,并传递了两个参数"Alice"和25,这两个参数按照位置进行传递。

关键字参数是指按照参数名进行传递的参数,例如:

def greet(name, age): print("Hello, my name is", name, "and I am", age, "years old.") greet(age=25, name="Alice")

在上面的代码中,我们定义了一个名为greet的函数,它有两个关键字参数name和age,函数体中输出了一句问候语。然后我们调用了这个函数,并使用关键字参数进行传递,这样可以不按照参数的位置进行传递,而是按照参数名进行传递。

三、变量赋值和数据类型

在Python中,变量赋值是一种非常重要的操作,它可以将数据存储到变量中,以便后续使用。Python中的变量赋值有以下几种方式:

直接赋值

直接赋值是最常见的一种方式,例如:

插入代码复制代码

x = 10 y = "Hello, World!"

在上面的代码中,我们分别将变量x和y直接赋值为整数类型的数据10和字符串类型的数据"Hello, World!"。

多重赋值

多重赋值是一种非常方便的方式,可以同时给多个变量赋值,例如:

x, y, z = 10, 20, 30

在上面的代码中,我们同时给变量x、y和z赋值为整数类型的数据10、20和30。

序列解包

序列解包是一种非常灵活的方式,可以将一个序列中的元素分别赋值给多个变量,例如:

a, b, c = [1, 2, 3]

在上面的代码中,我们将列表[1, 2, 3]中的元素分别赋值给变量a、b和c。

在Python中,数据类型是非常重要的概念,它决定了变量可以存储的数据类型。Python中的数据类型包括整数、浮点数、字符串、列表、元组、字典等。下面是一些常见的数据类型及其使用方法:

整数

整数是Python中最基本的数据类型之一,用于存储整数类型的数据。例如:

x = 10 y = -20

在上面的代码中,我们分别将变量x和y赋值为整数类型的数据10和-20。

浮点数

浮点数是Python中用于存储小数类型的数据,例如:

x = 3.14 y = -2.5

在上面的代码中,我们分别将变量x和y赋值为浮点数类型的数据3.14和-2.5。

字符串

字符串是Python中用于存储文本类型的数据,例如:

x = "Hello, World!" y = 'Python is awesome!'

在上面的代码中,我们分别将变量x和y赋值为字符串类型的数据"Hello, World!"和"Python is awesome!"。

列表

列表是Python中用于存储一组数据的数据类型,可以存储任意类型的数据,例如:

x = [1, 2, 3, 4, 5] y = ["apple", "banana", "cherry"]

在上面的代码中,我们分别将变量x和y赋值为列表类型的数据[1, 2, 3, 4, 5]和["apple", "banana", "cherry"]。

元组

元组是Python中用于存储一组数据的数据类型,与列表类似,但是元组是不可变的,即不能修改元组中的元素,例如:

x = (1, 2, 3, 4, 5) y = ("apple", "banana", "cherry")

在上面的代码中,我们分别将变量x和y赋值为元组类型的数据(1, 2, 3, 4, 5)和("apple", "banana", "cherry")。

字典

字典是Python中用于存储键值对数据的数据类型,例如:

x = {"name": "Alice", "age": 25, "city": "New York"} y = {"brand": "Ford", "model": "Mustang", "year": 1964}

在上面的代码中,我们分别将变量x和y赋值为字典类型的数据{"name": "Alice", "age": 25, "city": "New York"}和{"brand": "Ford", "model": "Mustang", "year": 1964}。

四、拓展知识

变量作用域

在Python中,变量的作用域是非常重要的概念,它决定了变量在哪些地方可以被访问。Python中的变量作用域分为全局作用域和局部作用域。全局作用域是指在整个程序中都可以访问的变量,局部作用域是指只能在函数内部访问的变量。例如:

x = 10 # 全局变量 def my_func(): y = 20 # 局部变量 print(x) # 可以访问全局变量x print(y) # 可以访问局部变量y my_func() print(x) # 可以访问全局变量x print(y) # 不能访问局部变量y

在上面的代码中,我们定义了一个全局变量x和一个函数my_func,在函数内部定义了一个局部变量y。在函数内部,我们可以访问全局变量x和局部变量y,但是在函数外部,我们只能访问全局变量x,不能访问局部变量y。

匿名函数

在Python中,可以使用lambda关键字定义匿名函数,例如:

add = lambda x, y: x + y print(add(10, 20)) # 输出30

在上面的代码中,我们使用lambda关键字定义了一个匿名函数,它有两个参数x和y,函数体中计算了x和y的和,并将结果返回。然后我们将这个匿名函数赋值给变量add,并调用它,输出结果为30。

内置函数

Python中有很多内置函数,可以直接使用,例如:

print(abs(-10)) # 输出10 print(max(1, 2, 3, 4, 5)) # 输出5 print(min(1, 2, 3, 4, 5)) # 输出1

在上面的代码中,我们分别使用了内置函数abs、max和min,它们分别用于计算绝对值、最大值和最小值。

三、章节总结

本文介绍了Python中的变量和函数,以及变量赋值和数据类型等内容。在Python中,变量是用来存储数据的容器,可以存储各种类型的数据,函数是一种封装了一定功能的代码块,可以重复使用。Python中的变量赋值有多种方式,数据类型包括整数、浮点数、字符串、列表、元组、字典等。在我们日常实际开发中,变量作用域、匿名函数和内置函数等也是非常重要的概念,需要深入学习和掌握。刚好又是压点打卡,这周下来都很充实,下周继续努力。

四、作业打卡

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1316207.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

《算法通关村——回溯模板如何解决回溯问题》

《算法通关村——回溯模板如何解决回溯问题》 93. 复原 IP 地址 有效 IP 地址 正好由四个整数&#xff08;每个整数位于 0 到 255 之间组成&#xff0c;且不能含有前导 0&#xff09;&#xff0c;整数之间用 . 分隔。 例如&#xff1a;"0.1.2.201" 和 "192.1…

《Effective C++》学习笔记

条款01&#xff1a;把 C 看成一个语言联邦 C由几个重要的次语言构成 C语言&#xff1a;区块&#xff0c;语句&#xff0c;预处理器&#xff0c;数组&#xff0c;指针等等。 类&#xff1a;class&#xff0c;封装&#xff0c;继承&#xff0c;多态......&#xff08;动态绑定等…

基于ssm旅游景点管理系统设计论文

摘 要 现代经济快节奏发展以及不断完善升级的信息化技术&#xff0c;让传统数据信息的管理升级为软件存储&#xff0c;归纳&#xff0c;集中处理数据信息的管理方式。本旅游景点管理系统就是在这样的大环境下诞生&#xff0c;其可以帮助管理者在短时间内处理完毕庞大的数据信息…

深度学习中的预测图片中的矩形框、标签、置信度分别是什么意思。

问题描述&#xff1a;深度学习中的预测图片中的矩形框、标签、置信度分别是什么意思。 问题解答&#xff1a; 目标框&#xff08;Bounding Box&#xff09;&#xff1a; 描述目标位置的矩形边界框。 类别标签&#xff1a; 表示模型认为目标属于哪个类别&#xff08;例如&#…

证明四元数乘法与旋转矩阵乘法等价

刚体四元数姿态控制 一文中没有证明的公式 R ( Q 1 ) R ( Q 2 ) R ( Q 1 ∘ Q 2 ) R(Q_1)R(Q_2)R(Q_1\circ Q_2) R(Q1​)R(Q2​)R(Q1​∘Q2​) 在这篇文章中证明。 首先找几个数测试是否等价。 quaternions.py的代码见 自用的四元数、欧拉角、旋转矩阵转换代码。 下面的代码中…

dockerfite创建镜像---INMP+wordpress

搭建dockerfile---lnmp 在192.168.10.201 使用 Docker 构建 LNMP 环境并运行 Wordpress 网站平台 [rootdocker1 opt]# mkdir nginx mysql php [rootdocker1 opt]# ls #分别拖入四个包&#xff1a; nginx-1.22.0.tar.gz mysql-boost-5.7.20.tar.gz php-7.1.10.tar.bz2 wor…

重要通知!中国电信警告:用户须关闭路由器“双频合一”功能

在网络的无尽时空里&#xff0c;一场电信官方的宣战正酝酿中&#xff0c;目标锁定在我们日常生活中不可或缺的WiFi身上~ 最新消息曝光&#xff0c;竟然是路由器内藏的一个名为“双频合一”的功能引发了这场轰轰烈烈的网络风暴。 我们时常觉得WiFi就像是隐身在我们生活中的超级英…

Faulhaber 2.5代运动控制系统 25mNm/13W

2.5代控制系统&#xff1b; PWM输出&#xff1b; 四象限控制带&#xff1b; RS232或CANopen通信接口&#xff1b; 2250_BX4_CxD 选件&#xff0c;电缆和连接信息&#xff1a; 适配部件&#xff1a;

SystemVerilog基础:并行块fork-join、join_any、join_none(二)

相关阅读 SystemVerilog基础https://blog.csdn.net/weixin_45791458/category_12517449.html 在第一节中&#xff0c;我们讨论了并行块中的fork-join块和fork-join_any块&#xff0c;了解了它们的差异&#xff0c;本文将继续讨论fork-join_none块的使用。 fork-join_none并行块…

Ubuntu 常用命令之 ll 命令用法介绍

ll是ls -l的别名&#xff0c;用于在Ubuntu系统中列出目录的详细信息。ls命令用于列出目录内容&#xff0c;-l选项则以长格式显示&#xff0c;包括文件类型、权限、链接数、所有者、组、大小、最后修改时间以及文件或目录名。 这是ll命令的基本格式 ll [选项]... [文件]...这是…

《地理信息系统原理》笔记/期末复习资料(9. 网络地理信息系统)

目录 9. 网络地理信息系统 9.1. 概述 9.1.1. 网络GIS概念 9.1.2. 网络GIS体系结构 9.1.3. 网络GIS内容体系 9.2. 分布式网络GIS 9.2.1. 分布式网络GIS概念 9.2.2. 分布式主要技术 9.3. WebGIS 9.3.1. WebGIS概念 9.3.2. WebGIS分类与特点 9.3.3. WebGIS技术框架 9…

Graphics Profiler 使用教程

GraphicsProfiler 使用教程 1.工具简介&#xff1a;2.Navigation介绍2.1.打开安装好的Graphics Profiler。2.2.将手机连接到计算机&#xff0c;软件会在手机中安装一个GraphicsProfiler应用(该应用是无界面的&#xff09;。2.3.Show files list2.4.Record new trace2.4.1.Appli…

Kotlin ArrayList类型toTypedArray转换Array

Kotlin ArrayList类型toTypedArray转换Array data class Point(val x: Float, val y: Float)fun array_test(points: ArrayList<Array<Point>>) {points.forEachIndexed { idx, ap ->ap.forEach {print("$idx $it ")}println()} }fun main(args: Arra…

第二届“奇安信”杯网络安全技能竞赛Reverse | pyre(需要用到反编译工具 pyinstxtractor.py)

赛题描述 这种exe文件怎么调用py的库&#xff1f; 题目附件&#xff1a;&#xff08;下载可能会有问题&#xff0c;记得直接跳过下载就可以了&#xff09; 抱歉无法处理您这个问题哦&#xff0c;您可以换个问题 PyInstaller Extractor 解包 适用场景 制作exe后丢失源代码 前…

基于中小微企业_个体工商户的信贷评分卡模型和用户画像(论文_专利_银行建模_企业调研)

背景介绍 信用贷款是指由银行或其他金融机构向中小微企业和个体工商户提供的一种贷款产品。该贷款的特点是无需提供抵押品或担保&#xff0c;主要依据借款人的信用状况来进行评估和审批。 中小微企业和个体工商户信用贷款的申请流程相对简单&#xff0c;申请人只需要提供个人…

Zebec 推出由 Visa、万事达网络支持的即时支付卡

“Zebec 现已推出全新的加密支付卡&#xff0c;该卡由 Visa、万事达网络支持&#xff0c;具备即时、多链、非托管、无需 KYC、免费等特性&#xff0c;其能够通过加密钱包与多条主流公链链接并直接调用支付&#xff0c;这将是加密支付领域的里程碑事件。” 在 2023 年的 12 月 8…

冗余备份组网——HSRP和GLBP协议

目录 HSRP&#xff08;思科私有协议&#xff09; HSRP基本概念 HSRP工作过程 HSRP的状态 HSRP的可靠性 HSRP相关配置 GLBP协议 HSRP&#xff08;思科私有协议&#xff09; HSRP基本概念 HSRP&#xff08;Host Standby Router Protocol&#xff09;为主机备份路由协议 …

B037-Mybatis基础

目录 为什么需要Mybatis&#xff1f;mybatis简介入门案例其余见代码查询流程增删改流程 - 变动数据要加事务去持久化抽取公共类 mapper接口开发规则概述代码 mapper.xml引入本地约束文件别名日志管理作用log4j的使用规范 井大括号与dollar大括号的区别 框架&#xff1a;半成品&…

C# OpenVINO 直接读取百度模型实现图片旋转角度检测

目录 效果 模型信息 代码 下载 C# OpenVINO 直接读取百度模型实现图片旋转角度检测 效果 模型信息 Inputs ------------------------- name&#xff1a;x tensor&#xff1a;F32[?, 3, 224, 224] --------------------------------------------------------------- Ou…

[RTOS移植]--STM32F767移植RTThread

文章目录 通过STM32cube创建一个工程选择要移植的RTOS源下载到本地如果没有重启软件选择对应配置后续补充 通过STM32cube创建一个工程 选择要移植的RTOS源 下载到本地 如果没有重启软件 选择对应配置 Build started: Project: STM32F767 *** Using Compiler V5.06 update 7 (b…