list 函数用来创建一个新的 list。list 可以包含不同的数据类型,包括数据、数组、结构体、指针、对象以及其他的 list 或者 哈希表。

序号 类名称  

功能说明

  语法 & 举例
00 LIST 函数  

====<<<< Description >>>>====

创建一个新的 list。
----------------------------------------------------------------------------------

====<<<< Syntax >>>>====

Result = LIST( [Value1, Value2, ... Valuen] [, /EXTRACT] [, LENGTH=value] [, /NO_COPY])

----------------------------------------------------------------------------------

====<<<< Return Value >>>>====

返回值为一个新创建 list 的引用。

----------------------------------------------------------------------------------

====<<<< Parameters >>>>====

◈  Valuen:每个元素的值。
◈  EXTRACT:默认情况下,数组和 list 都是以单独的元素存在的,设置此关键字,数组和 list 中的元素都会添加到此 list 中。
◈  LENGTH=value:指定元素的个数,如果大于参数个数,则循环填充,如果没有元素,则全部为“!NULL”。

 
IDL> array1 = indgen(4)
IDL> array2 = findgen(4)
IDL> list1 = list(array1, array2, /extract)
IDL> list1
[
0,
1,
2,
3,
0.00000000,
1.0000000,
2.0000000,
3.0000000
]
IDL> LIST(0, 1, LENGTH=5)
[
0,
1,
0,
1,
0
]
01 List::Add  

====<<<< Description >>>>====

增加一个新的元素。
----------------------------------------------------------------------------------

====<<<< Syntax >>>>====

list.Add,Value [, Index] [, /EXTRACT] [, /NO_COPY])

----------------------------------------------------------------------------------

====<<<< Parameters >>>>====

◈  Value:添加元素的值。
◈  Index:添加的位置,默认添加在最后。
◈  EXTRACT:默认情况下,数组和 list 都是以单独的元素存在的,设置此关键字,数组和 list 中的元素都会添加到此 list 中。

 
IDL> a = list(indgen(3), /extract)
IDL> a.add, ['a', 'b'], 2, /extract
IDL> a
[
0,
1,
"a",
"b",
"a",
2
]
02 List::Count  

====<<<< Description >>>>====

返回元素的个数。或者指定元素的个数。
----------------------------------------------------------------------------------

====<<<< Syntax >>>>====

Result = list.Count( [Value] )

----------------------------------------------------------------------------------

====<<<< Parameters >>>>====

◈  Value:搜索的值,默认情况下返回所有元素的个数。

 
IDL> a = list(1,2,3,4,2,4,2)
IDL> print, a.count()
7
IDL> print, a.count(2)
3
  List::IsEmpty  

====<<<< Description >>>>====

用来测试此 list 是否为空,非空返回 1,否则返回 0。
----------------------------------------------------------------------------------

====<<<< Syntax >>>>====

Result = list.IsEmpty(  )

 
IDL> a = list()
IDL> a.isempty()
1
IDL> a = list(1, 2)
IDL> a.isempty()
0
  List::Move  

====<<<< Description >>>>====

将一个元素从一个位置移动到另一个位置,其他顺序不变。
----------------------------------------------------------------------------------

====<<<< Syntax >>>>====

list.Move, Source, Destination

 
IDL> l = LIST(0, 1, 2, 3, 4)
IDL> l.Move, 1,4
IDL> PRINT, l
0
2
3
4
1
  List::Remove  

====<<<< Description >>>>====

从一个 list 中删除元素并选择性返回删除的值。
----------------------------------------------------------------------------------

====<<<< Syntax >>>>====

list.Remove [, /ALL]

or

list.RemoveIndices

or

Value = list.Remove( [, /ALL] )

or

Value = list.Remove( Indices )

----------------------------------------------------------------------------------

====<<<< Return Value >>>>====

如果 List::Remove( ) 没有参数,则删除最后一个元素并返回其值;
如果 List::Remove( ) 有一个参数 Index,则返回指定元素的值;
如果 List::Remove( ) 有一个索引数组或者 ALL 关键字,则返回一个包含指定元素的新 list。
----------------------------------------------------------------------------------

====<<<< Parameters >>>>====

◈  Indices:索引值或者索引数组,如果未指定,则删除最后一个元素。
◈  All:设置此关键字,则删除所有元素。

 
IDL> l = LIST(0, 1, 2, 3, 4)
IDL> l.Remove, [0, 1]
IDL> l
[
2,
3,
4
]
IDL> m = l.Remove(0)
IDL> m
2
  List::Reverse  

====<<<< Description >>>>====

将 list 里面全部元素的位置反转。
----------------------------------------------------------------------------------

====<<<< Syntax >>>>====

list.Reverse

   
  List::Sort  

====<<<< Description >>>>====

为 list 中的所有元素进行排序并返回一个新的 list。
----------------------------------------------------------------------------------

====<<<< Syntax >>>>====

Result = list.Sort( COMPARE_FUNCTION=string, COUNT=integer, INDICES=variable, /OVERWRITE, /REVERSE )

----------------------------------------------------------------------------------

====<<<< Return Value >>>>====

返回值为一个新创建 list 的引用。

----------------------------------------------------------------------------------

====<<<< Parameters >>>>====

◈  COMPARE_FUNCTION:。
◈  COUNT:用于排序的元素个数,前一部分。
◈  INDICES:变量值返回一个数组用来记录元素在原始列表的索引值。
◈  OVERWRITE:设置此关键字,将原 list 的内容进行排序,而不需要创建一个新的 list。
◈  REVERSE:相反的顺序。

   
  List::Swap  

====<<<< Description >>>>====

将两个元素的位置交换,其他元素的位置和顺序不变。
----------------------------------------------------------------------------------

====<<<< Syntax >>>>====

list.Swap, Index1, Index2

   
  List::ToArray  

====<<<< Description >>>>====

此函数返回一个包含 list 元素的数组。
----------------------------------------------------------------------------------

====<<<< Syntax >>>>====

Result = list.ToArray( DIMENSION=value, MISSING=value, /NO_COPY, /PROMOTE_TYPE, /TRANSPOSE, TYPE=value )

----------------------------------------------------------------------------------

====<<<< Return Value >>>>====

返回值为一个数组。

----------------------------------------------------------------------------------

====<<<< Parameters >>>>====

◈  TYPE:转换后的数据类型。

   
  List::Where  

====<<<< Description >>>>====

此函数返回一个 list 中与指定值相等元素的索引数组。
----------------------------------------------------------------------------------

====<<<< Syntax >>>>====

Result = list.Where( Value [, COMPLEMENT=variable] [, COUNT=variable] [, NCOMPLEMENT=variable] )

----------------------------------------------------------------------------------

====<<<< Return Value >>>>====

返回值为一个数组。

----------------------------------------------------------------------------------

====<<<< Parameters >>>>====

◈  TYPE:转换后的数据类型。

   
           

【299】◀▶ IDL - LIST 函数的更多相关文章

  1. IDL Interpolate()函数

    Interpolate()函数:可以将数组调整到同维任意大小,并支持任意定位差值.调用格式为 Interpolate(数组,X[,Y[,Z]][,关键字]) 例子: IDL> arr=findg ...

  2. 【221】◀▶ IDL GUI 函数说明

    参考:GUI - Dialogs Routines参考:GUI - Widgets Routines参考:GUI - Compound Widgets Routines 01   DIALOG_MES ...

  3. 【219】◀▶ IDL 数学函数说明

    参考:Math - Miscellaneous Routines参考:Math - Statistical Tools Routines 01   ABS 绝对值. 02   SQRT 平方根. 03 ...

  4. 【297】IDL 过程、函数&关键字参数

    目录: 一.Procedure 1.1 基本说明&定义 1.2 关键字参数 二.Function 2.1 基本说明&定义 2.2 关键字参数 参考:IDL中函数中的带有关键字的参数的使 ...

  5. C语言-自定义函数

    C语言自定义函数 --1-- 自定义函数定义 1.1 无参无返回值函数 1.2 无参有返回值函数 1.3 有参无返回值函数 1.4 有参有返回值函数 --2-- 函数的参数 2.1 形式参数介绍和使用 ...

  6. IDL 实现 EOF(经验正交函数分析)

    关于EOF详细介绍请wiki http://en.wikipedia.org/wiki/Empirical_orthogonal_functions或者Google之. 与PCA一样,EOF也是遥感多 ...

  7. IDL 字符串

    1.创建字符串 字符串和字符串数组通过赋值或函数方式来创建.在IDL字符串用" "或' '括起来表示. IDL> s1="abcdef" IDL> ...

  8. 【转】高通平台android 环境配置编译及开发经验总结

    原文网址:http://blog.csdn.net/dongwuming/article/details/12784535 1.高通平台android开发总结 1.1 搭建高通平台环境开发环境 在高通 ...

  9. 【linux驱动分析】之dm9000驱动分析(六):dm9000_init和dm9000_probe的实现

    一.dm9000_init 打印出驱动的版本,注冊dm9000_driver驱动,将驱动加入到总线上.运行match,假设匹配,将会运行probe函数. 1 static int __init 2 d ...

随机推荐

  1. 携程 决赛 第一题 Crossword

    //真是郁闷的一晚上//比赛时看到这题是就感觉会做,感觉思路清晰 就去准备找第二题 ,因为感觉第二题是个经典问题,(我不会计算几何),就去搜索了下,然后找到求最小面积的,改来改去,一直Wa// 然后就 ...

  2. Sublime Text 3常用插件安装

    Sublime Text 3常用插件安装 PS:sublime是笔者用过的最好用的编辑器,也是最轻量级,功能最强大的编辑器.好东西应该被分享! 1.直接安装 --下载安装包解压缩到Packages目录 ...

  3. LeetCode Number of Atoms

    原题链接在这里:https://leetcode.com/problems/number-of-atoms/description/ 题目: Given a chemical formula (giv ...

  4. maven docker plugin 常见问题解决

    1. maven 项目必须使用小写,不然会一直有500 的错误    500: HTTP 500InternalServerError     2. docker server  连接数超了 Fail ...

  5. python socket的应用 以及tcp中的粘包现象

    1,socket套接字 一个接口模块,在tcp/udp协议之间的传输接口,将其影藏在socket之后,用户看到的是socket让其看到的. 在tcp中当做server和client的主要模块运用 #s ...

  6. (转)java使用jsp servlet来防止csrf 攻击的实现方法

    背景: 1.csrf知识 CSRF(Cross-site request forgery跨站请求伪造,也被称为“one click attack”或者session riding,通常缩写为CSRF或 ...

  7. kotlin与fastjson的异常

    出现这个原因是因为kotlin的非空特性. 如果一个类中声明了一个字段(kotlin的特性,该字段默认是非空的), 使用fastjson进行转化的时候,如果json数据中没有该字段的数据,则会出现转换 ...

  8. Linux 准确查找结构体定义位置

    例如:查找文件操作结构体 struct file_operations, 使用转移符 "\" $ grep struct\ file_operations\ { kernel/in ...

  9. Java语言与C语言混合编程(2)--在Java中调用C语言本地库

    在上一篇文章中介绍了Java语言中的native关键字,以及Java语言调用C语言的编译生成本地动态链接库(DLL)实现加法运算的小例子,本文通过一个更加详细的例子,深入讲解Java语言调用C语言的函 ...

  10. js继承方式及其优缺点?

    原型链继承的缺点一是字面量重写原型会中断关系,使用引用类型的原型,并且子类型还无法给超类型传递参数.借用构造函数(类式继承)借用构造函数虽然解决了刚才两种问题,但没有原型,则复用无从谈起.所以我们需要 ...