我有一本字典,具有与不同键对应的不同前缀。我想将字符串追加和预先添加到字典中的每个值。
例如:
filePrefixes: `QCentral`QWest`QEast!("GLO_CCEUML_CSFBSL_";"GLO_CCALML_CSFBSL_";"GLO_CCAPML_CSFBSL_")
我想预先添加folderPath并附加dateFormat和文件扩展名“ .csv”。
因此字典应如下所示:
filePrefixes: `QCentral`QWest`QEast!("..\..\code\products\Q\ShortLocator2\Request Files\1\GLO_CCEUML_CSFBSL_20181203_1948.csv";"..\..\code\products\Q\ShortLocator2\Request Files\1\GLO_CCALML_CSFBSL_20181203_1948.csv";"..\..\code\products\Q\ShortLocator2\Request Files\1\GLO_CCAPML_CSFBSL_20181203_1948.csv")
我做了这样的事情。不知道是否有更好的方法可以做到这一点:
filename: (value filePrefixes),\:(dateFormat,".csv");
filePaths: string[folderPath],/:(filename);
filePrefixes:(key filePrefixes)!(filePaths);
答案 0 :(得分:3)
如果有帮助,可以直接在字典中修改值。根据您的示例代码对dateFormat
和folderPath
进行一些假设:
dateFormat:"20181203_1948";
folderPath:"..\\..\\code\\products\\Q\\ShortLocator2\\Request Files\\1\\"
这可以与上面提供的步骤结合使用,而无需提取值:
q)show filePrefixes:folderPath,/:filePrefixes,\:dateFormat,".csv"
QCentral| "..\\..\\code\\products\\Q\\ShortLocator2\\Request Files\\1\\GLO_CCEUML_CSFBSL_20181203_1948.csv"
QWest | "..\\..\\code\\products\\Q\\ShortLocator2\\Request Files\\1\\GLO_CCALML_CSFBSL_20181203_1948.csv"
QEast | "..\\..\\code\\products\\Q\\ShortLocator2\\Request Files\\1\\GLO_CCAPML_CSFBSL_20181203_1948.csv"
从本质上讲,这些值就像一个列表,但有些限制在Q凡人的dictionaries部分中简要讨论。