zoukankan      html  css  js  c++  java
  • 【299】◀▶ IDL

    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:转换后的数据类型。

       
               
  • 相关阅读:
    POJ 3009
    POJ 3253
    POJ 3617
    POJ 3984
    UVA10012
    HDU5100
    HDU 5101
    UVA301 运输
    UVA 331 交换的方案数
    uva 10344 算23点
  • 原文地址:https://www.cnblogs.com/alex-bn-lee/p/8379485.html
Copyright © 2011-2022 走看看