RUNOOB python练习题47 交换两个变量值

Ubuntu20.04配置PX4环境启动或编译jmavsim 出现的错误及解决办法 错误1:ant命令未找到 阅读详情

用来练手的python练习题,原题链接: python练习实例47

题干: 两个变量值互换

在C语言C++中我们要构造一个能交换两个变量值的函数很方便,我们可以使用指针,或者C++中的引用。那么在没有指针的python中如何构造一个可以交换两个变量值的函数呢,我的第一个想法是利用python变量的作用域。使用global关键词的全局变量,代码如下:

def exchange():
  global a
  global b
  c = a
  a = b
  b = c

if __name__ == '__main__':
  a = 10
  b = 20
  print(a,b)
  exchange()
  print(a,b)

输出结果如下:
在这里插入图片描述
我们使用global关键字后就可以在函数中交换外部全局变量了。但使用全局变量会让我们的代码在重构时产生麻烦。那么我们还可以利用Python的特性,即python函数可以返回任意个数的返回值。实现代码如下:

def exchange(m,n):
  m,n = n,m
  return (m,n)


if __name__ == '__main__':
  m = 10
  n = 20
  m,n = exchange(m,n)
  print("m的值是:%d"%m)
  print("n的值是:%d"%n)

输出结果如下:
在这里插入图片描述

Android 13 灭屏音乐播放问题解决与优化建议 通过在中增加对音乐播放状态的检测,我们成功解决了客户应用在灭屏状态下音乐播放被中断的问题。 阅读详情

相关推荐

STM32F407+LAN8720网口不通?别慌,手把手教你用CubeMX和HAL库搞定RMII配置与调试

本文详细介绍了STM32F407与LAN8720网口不通的全面排查与解决方法,涵盖硬件检查、CubeMX配置、PHY芯片初始化和LWIP协议栈优化。通过RMII接口配置、时钟树设置和PHY芯片调试,帮助开发者快速定位并解决网络连接问题,提升嵌入式网络开发效率。

weixin_30457551的博客 506

4种方式交换两个变量的值(Python)

(4) 通过异或进行两个变量值的交换,一个数异或另一个数两次,得到的结果为该数本身。(2) 使用a,b=b,a进行两个变量值的交换。(1) 设置中间变量进行两个变量值的交换。(3) 运用加减运算进行两个变量值的交换。

qq_43210911的博客 2614

STM32开发实战:从嵌入式系统到硬件控制 | 你必须得会

🏆本文收录于「编程与技术实战」专栏,此专栏涵盖了C/C++编程、人工智能、数据结构、机器学习等技术领域的内容,助你早日登顶实现财富自由🚀;同时,欢迎大家关注&&收藏&&订阅!持续更新中,up!up!up!!

**My Coding Family** 1046

用python实现两个变量交换值的几种方法

定义一个第三方的中间变量作为辅助。

pdxdhmk318的博客 901

Mac上Ollama服务IP访问失败的3种修复方法(含永久生效配置)

本文详细介绍了Mac上Ollama服务IP访问失败的3种修复方法,包括临时环境变量覆盖、永久Shell配置修改及进阶排查技巧。重点解析了OLLAMA_HOST环境变量的配置原理,帮助开发者解决Connection refused问题,实现局域网IP访问Ollama服务的需求。

weixin_29209805的博客 209

遥感数据处理必看:哨兵1 SLC与GRD预处理差异全解析

本文详细解析了哨兵1号卫星SLC与GRD数据的预处理差异,从数据基础认知到实战应用全流程对比。重点介绍了SLC数据的轨道校正、辐射校正等关键步骤,以及GRD数据的简化处理流程,帮助用户根据应用场景选择合适数据类型。通过SNAP等工具的实际操作示例,提升遥感数据处理效率。

weixin_29035405的博客 339

【C语言练习——交换两个变量的值】

# 前言 本文练习交换两个变量的值,大体上分为两类方法,创建临时变量和不创建临时变量,主要包括: - 创建临时变量——一般方法 - 创建临时变量——指针 - 不创建临时变量——加减法 - 不创建临时变量——异或

taibudong1991的博客 2805

想学嵌入式但没开发板?试试这个免费的STM32虚拟仿真平台(含LVGL界面教程)

本文介绍如何利用免费的STM32虚拟仿真平台学习嵌入式开发,特别适合预算有限或零硬件基础的学习者。通过详细的LVGL界面开发教程,展示虚拟仿真在嵌入式学习中的高效性和实用性,涵盖环境搭建、代码实现到实机迁移的全流程,助力快速掌握嵌入式开发核心技能。

weixin_29266647的博客 306

【Python面试题收录】Python中有哪些方法交换两个变量的值?至少给出三种方法。

Python中有哪些方法交换两个变量的值?至少给出三种方法。使用临时变量、元组、加减法、异或运算。

qq_39780701的博客 633

Unreal5从入门到精通 专栏目录

欢迎来到“UE5从入门到精通”专栏!在这里,我们将带您踏上一段精彩的旅程,深入探索虚幻引擎5(Unreal Engine 5)的无限可能。不论您是游戏开发的新手,还是希望提升技能的开发者,这里都有适合您的内容。基础知识:了解虚幻引擎5的界面、功能和基本操作,为您的学习打下坚实的基础。项目实战:通过实际项目案例,帮助您从理论走向实践,真实体验游戏开发的每个环节。高级技巧:分享各种高级功能和技巧,包括蓝图、C++编程、材质编辑、光照和渲染等,让您能够创作出更具专业水准的作品。

TxNet 2990

PCL 法线定向【2025最新版】

几种法线定向方法的PCL代码实现。

点云侠的博客 2806

python交换两个变量的值的四种方法

【代码】python交换两个变量的值的四种方法。

vicky的博客 9963

【Python搞定车载自动化测试】——Python实现车载以太网DoIP刷写(含Python源码)

随着智能电动汽车行业的发展,汽车=智能终端+四个轮子,而人工智能也发展越来越快,Python语言使用越来越广,本章节主要介绍如何使用Python语言基于Pytest自动化框架来实现DoIP诊断自动化测试。首先回顾一下DoIP诊断基础知识:DoIP(Diagnosis over Internet Protocol)是一种用于车辆诊断的网络通信协议。它基于现代互联网技术,允许通过以太网或IP网络进行车辆诊断和通信。

测试领域技术分享 3797

新手学编程必会的100个代码

我记得刚开始接触编程的时候,觉得太难了。也很好奇,写代码的那些人也太厉害了吧?全是英文的,他们的英文水平一定很好吧?他们是怎么记住这么多代码格式的?而且错了一个标点符号,整个程序都会有影响。一个程序几千行,错一个标点符号都不行这也太难了吧?带着新手的灵魂拷问,作为从业单片机编程10年的开发者,我来为大家拨开云雾。看完以后你就会明白,其实他们也没那么厉害!即便你是初中文凭,也照样能编程。对于python语言来说,要记得东西其实不多,基本就是几个常用语句加一些关键字而已。

程序员小麦的博客 2611

WINCC7.3破解文件

WINCC7.3硬件够破解文件,有需要的下载!WINCC7.3硬件够破解文件,有需要的下载!

VB摄像头监控

该VB模块可对摄像头捕获的画面进行录像等,可在创建的窗口进行控制

初学者必会的100个Python编程代码,入门全套资料都给朋友们整理好了,文末免费领!_python必背入门代码(1)

不知道你们用的什么环境,我一般都是用的Python3.6环境和pycharm解释器,没有软件,或者没有资料,没人解答问题,都可以免费领取(包括今天的代码),过几天我还会做个视频教程出来,有需要也可以领取~给大家准备的学习资料包括但不限于:Python 环境、pycharm编辑器/永久激活/翻译插件python 零基础视频教程Python 界面开发实战教程Python 爬虫实战教程Python 数据分析实战教程python 游戏开发实战教程Python 电子书100本。

2401_84569545的博客 915

复分析 阿尔福斯(Ahlfors) 第三版答案 英文

答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案

从0到1快速学会Linux操作系统(基础),这一篇就够了!

Linux基础入门:从0到1快速掌握常用操作,这一篇就够了!

「YYL DBA手记」 数据库 · 架构 · 运维 · 实战 yyldba.blog.youkuaiyun.com 5万+

shell常实用命令

利用ssh远程执行服务器命令 fuction expect_server() { expect <<EOF set timeout 1000 spawn $@ expect { "(yes/no)?" {send "yes\r"; exp_continue} "asswor*" {send "${SERVER_PASSWD}\r"; exp_continue} eo...

weixin_41469272的博客 7560

Linux基础

Linux基础 一、安装与配置 **1)操作系统概述介绍 ** 操作系统的作用是管理和控制计算机系统中的硬件和软件资源 操作系统组成:内核(管理硬件信息)+ 解释器(bash+python) + 软件程序 多用户 多线程 开源操作系统 2) 操作系统选择介绍 3) 操作系统镜像获取 官方网站获取系统镜像: https://www.centos.org/ 最新版 centos8 下载源获取系统镜像: 阿里源 清华源 交通大学源 https://developer.aliyun.com/mirror/

有用的话关个注,点个赞,收个藏🫶。 1687

python如何交换两个值

文章目录一、传统数值交换二、直接交换,python写法三、总结 一、传统数值交换 解决思路: 通过中间变量,把两个数值的位置进行交换 代码如下(示例): a = 123 b = 345 c = a a = b b = c print(a,b) #其中c为中间变量值 #输出结果为:345 123 二、直接交换,python写法 解决思路: 直接一行代码,把两个数值的位置互换即可 代码如下(示例): a = 123 b = 345 a,b = b,a print(a,b) #a,b = b,a 就是把两个

weixin_44688529的博客 1万+

Python中交换两个变量的值

交换两个变量的值方法有很多,但大多数情况下被问到这个问题的时候,总是让我们回答不常用的方法,下面我们讨论一下交换变量的几种方法: 方法一: 该方法是我们最常见的方法,也是最容易理解的方法,通过添加新的中间变量的方法实现交换数值 方法二: 此方法是python中特有的方法,一行代码就可以解决问题,非常快捷。是将变量放到元组中,再通过元组按照index进行赋值的方式对变量进行重新赋值 当然这种方法并不受限于两个变量,多个变量也是可以的,只是要对应好哪个变量与哪个变量交换值 方法三:

Loneker的博客 1万+

python输入两个变量x1和x2、交换他们的值并且输出_1:编程实现由键盘输入两个整数,将其赋给变量x和y并输出,交换x和y的值后再输出 用函数输出!...

展开全部可以使用以下三个方法实现:1、方法一:【中间变量32313133353236313431303231363533e58685e5aeb931333366303839】通过设置一个变量交换两个值。这种方式是最直接也是最容易理解的方式(为了代码的易读性,推荐使用这种形式),不过有一个临时变量,如果不想创建临时变量则可以使用下面的方式。2、方法二:【值变化】通过加减操作实现值得交换,具体代码如下...

weixin_39631316的博客 5850

python怎么交换两个变量的值_python交换两个变量的值方法

大部分语言,例如c语言,交换两个变量的值需要使用中间变量。例如交换a,b伪代码:tmp = aa = bb = tmppython里面可以实现无临时变量的交换(a,b) = (b,a)对于它的交换原理我深感好奇,因为这意味着python解释器很有可能做了件更多的工作。如果说变量可以直接交换,那么列表的元素呢?lists[i], lists[j] =lists[j], lists[i]是否可以实现列...

weixin_29186249的博客 2248

python 实例变量_Python基础练习实例41(两个变量互换)

题目:两个变量值互换。其中if __name__ == '__main__':这句估计很多和我一样的初学者都是不求甚解。__name__是一个变量。前后加了爽下划线是因为是因为这是系统定义的名字。普通变量不要使用此方式命名变量。__name__就是标识模块的名字的一个系统变量。这里分两种情况:假如当前模块是主模块(也就是调用其他模块的模块),那么此模块名字就是__main__,通过if判断这样就可...

weixin_39613951的博客 199
上一篇: RUNOOB python练习题44
下一篇: lambda函数 RUNOOB python练习题49
Cy_coding
博客等级 码龄7年 49粉丝 88原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值