matlab中如何定义多个变量赋值,MATLAB对多个变量同时赋值

《MATLAB对多个变量同时赋值》由会员分享,可在线阅读,更多相关《MATLAB对多个变量同时赋值(2页珍藏版)》请在人人文库网上搜索。

1、MATLAB对多个变量赋值(实现连等)转自:http:/blog.sina.com.cn/s/blog_6163bdeb0102dvhk.html x=y=z=100对a,b和c分别赋值1,2和3a,b,c=1,2,3这样的语句在python是合法的,但是在MATLAB的中是不合法的,那到底MATLAB中是否有其它解决方案呢。呵呵偷偷告诉您,这个是有滴。MATLAB中提供了deal函数进行多变量赋值处理,且用处很大哦。该函数最基本语法为Y1, Y2, Y3, . = deal(X),即Y1=Y2=Y3=XY1, Y2, Y3, . = deal(X1, X2, X3, ),即Y1=X1,Y2=。

2、X2,Y3=X3上面只是函数的基本用法,有些人觉得也没什么呀,哈哈其实您错了,这个函数的用处大着呢。我需要从细心看问题,才能看到本质。在讲解之前先说两个小知识点:(1)如果x=mat,lab,sky,那么x:结果完全等效于:x1,x2,x3,注意三个数据之间有逗号分隔开(2)如果x(1).url=mat,x(2).url=lab,x(3).url=sky,也就是说x是一个结构体数组,那么x.url将完全等效于:x(1).url,x(2).url,x(3).url,注意有逗号分隔例子1:对x,y,z同时初始化为100 x,y,z=deal(100)x =100y =100z =100例子2:对a。

3、,b,c分别初始化为mat,lab,sky a,b,c=deal(mat,lab,sky)a =matb =labc =sky例子3:将Cell数组x=1 2 3中的1,2,3分别赋值给a,b,c x=1 2 3; a,b,c=deal(x:) % 注意a,b,c=deal(1 2 3)是错误的a =1b =2c =3例子4:将cell数组x=1 2 3分别付给结构数组y的data字段 x=1 2 3; y(1:3).data=deal(x:)y =13 struct array with fields:data例子5:将结构体数组A的age字段全部赋值为0 A(1:100).age=deal(0)A =1100 struct array with fields:age如果您的MATLAB版本是7.0以上,那么有时deal函数可以直接省略,请往下看!其实MATLAB中只要等号两边的表达式中,逗号的个数相等就可以直接省略deal进行赋值,注意等号右边的逗号表达式不能手工敲入,只能使用x:和y.me等两种形式得到的等效逗号表达式,但左边可以使用a,b的手动逗号形式。 x=10 20; a,b=x:a =10b =20 web(1).url=matlabsky;web(2).url=mathsky; a,b=web.urla =matlabskyb =mathsky。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值