IDL学习笔记(一)数据类型、基础运算、控制语句

近期,需要用到modis数据批量预处理,于是重新学习idl,感谢郭师兄推荐,以及张洋老师的详细教导。特以此为学习笔记,望学有所成。

IDL注释为;

数据类型

数据类型

在这里插入图片描述

创建数组

Result = 函数([D1[,…,D8])至多八个维度
常见函数:
BYTARR: 字节型数组
DBLARR:双精度浮点型
FLTARR:浮点型数组
FINDGEN:浮点型索引数组
indgen:整型索引数组
STRARR:字符串

函数不区分大小写

BYTARR,DBLARR,FLTARR,INTARR, LON64ARR,LONARR,UINTARR,ULON64ARR,ULONARR,STRARR
BINDGEN,DCINDGEN, DINDGEN,FINDGEN,CINDGEN,LINDGEN,-SINDGEN,UINDGEN, UL64INDGEN, ULINDGEN

类型转换函数

BYTE, FIX, COMPLEX, DCOMPLEX, DOUBLE, FLOAT, LONG, LONG64, STRING,UINT, ULONG, ULONG64

整型 转换为 浮点型
a = indgen(5,5)
浮点型 转换为 整型
b = float(a)

FIX:转换为整型

IDL 中第一维是列,第二维是行,下标从0开始

代码输出

print

在这里插入图片描述

往文件中输出

openw,1,'D:/out.txt'

这里的1是硬盘的一个硬件存储位置,用1代替,运行后会创建一个txt

b=intarr(3,4)
printf,1,b
printf,1,'hello'

这个意思是往1当中,把b写进去。这里的1代指硬件地址。此时打开文件是看不到东西的,因为文件被idl占用了,所以需要归还文件,代码为:

free_lun,1

此时可以看到内容了。

注意:
此时再次,使用

openw,1,'D:/out.txt'
printf,1,'hello'
free_lun,1

此时文件中只剩下hello了,这是因为openw这个操作,不加其他关键字的时候,代表新建一个文件,若存在,则清空后新建,写入新的东西,原本东西不复存在。

那么如何保留之前的,继写呢?加关键字!

IDL> openw,1,'D:/out.txt',/append

这样就可以续写了!

help查询命令

HELP[,Expression1,…,ExpressionN]
查询对象相关信息
查询未知对象a的信息

help,a

可以输出数据类型 、行数、列数。

基础运算

创建数组的时候,一定要记住他的下标(几)。且下标从0开始的。

a = findgen(3,4)
print,a[3,4]

上述代码是错误的,a没有第三列第四行,因为从0开始,下标最大只有[2,3]。

在这里插入图片描述
索引数组是从0开始,按行蛇形排列的。

IDL> a = findgen(3,4)
IDL> print,a 

结果为:
0.00000 1.00000 2.00000
3.00000 4.00000 5.00000
6.00000 7.00000 8.00000
9.0

评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值