成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

更多的處理:在Jython中解析命令行

開(kāi)發(fā) 后端
經(jīng)常會(huì)需要對(duì)命令行參數(shù)進(jìn)行比 sys.argv 所提供的更多的處理,因此在Jython中解析命令行成了一個(gè)有效的手段。本文介紹了如何在Jython中解析命令行。

在Jython中解析命令行

經(jīng)常會(huì)需要對(duì)命令行參數(shù)進(jìn)行比 sys.argv 所提供的更多的處理。parseArgs 函數(shù)可以用于作為一組位置參數(shù)和一個(gè)開(kāi)關(guān)字典得到任意的命令行參數(shù)。

因此,繼續(xù) JavaUtils.py模塊片段,我們看到:

  1. def parseArgs (args, validNames, nameMap=None):  
  2.     """ Do some simple command line parsing. """ 
  3.     # validNames is a dictionary of valid switch names -  
  4.     #   the value (if any) is a conversion function  
  5.     switches = {}  
  6.     positionals = []  
  7.     for arg in args:  
  8.         if arg[0] == '-':               # a switch  
  9.             text = arg[1:]  
  10.             name = text; value = None 
  11.             posn = text.find(':')       # any value comes after a :  
  12.             if posn >= 0:  
  13.                 name = text[:posn]  
  14.                 value = text[posn + 1:]  
  15.             if nameMap is not None:     # a map of valid switch names  
  16.                 name = nameMap.get(name, name)  
  17.             if validNames.has_key(name):   # or - if name in validNames:  
  18.                 mapper = validNames[name]  
  19.                 if mapper is None: switches[name] = value  
  20.                 else:              switches[name] = mapper(value)  
  21.             else:  
  22.                 print "Unknown switch ignored -", name  
  23.  
  24.         else:                           # a positional argument  
  25.             positionals.append(arg)  
  26.     return positionals, switches  

可以如下使用這個(gè)函數(shù)(在文件 parsearg.py 中):

  1. from sys import argv  
  2. from JavaUtils import parseArgs  
  3.  
  4. switchDefs = {'s1':None's2':int, 's3':float, 's4':int}  
  5. args, switches = parseArgs(argv[1:], switchDefs)  
  6. print "args:", args  
  7. print "switches:", switches  

對(duì)于命令c:\>jython parsearg.py 1 2 3 -s1 -s2:1 ss -s4:2,它打印:

  1. args: ['1''2''3''ss']  
  2. switches: {'s4'2's2'1's1'None

這樣就實(shí)現(xiàn)了在Jython中解析命令行。

【編輯推薦】

  1. 如何將Jython類型轉(zhuǎn)換為Java類型
  2. Jython訪問(wèn)Java屬性文件的方法一覽
  3. 用于Jython連接Java的JavaUtils模塊
  4. Jython線程示例:定義共享緩沖區(qū)
  5. 與Java語(yǔ)言相比Jython開(kāi)發(fā)的獨(dú)特性能
責(zé)任編輯:yangsai 來(lái)源: 網(wǎng)絡(luò)
相關(guān)推薦

2010-05-21 18:30:02

2023-11-30 10:42:43

Rust命令行參數(shù)

2010-08-20 10:05:23

用戶命令

2009-07-20 09:55:30

華為命令行解析華為認(rèn)證

2010-07-15 10:47:22

Perl命令行

2021-07-29 10:00:43

XMLXMLStarletLinux

2021-11-08 10:45:07

Python命令工具

2021-07-12 14:53:27

LinuxGmail電子郵件

2010-03-24 14:08:10

CentOS命令行

2010-07-15 11:08:23

Perl命令行

2011-01-18 19:11:26

Postfix命令行

2021-01-13 05:29:26

命令行

2023-03-28 08:40:22

命令行JSON用法

2021-08-19 14:27:56

Java應(yīng)用程序解析方法

2023-03-01 11:35:45

2022-10-25 13:01:36

Linux命令行空目錄

2011-01-17 11:12:54

華為認(rèn)證

2010-07-15 10:58:23

Perl命令行程序

2021-08-30 07:50:42

腳本語(yǔ)言命令行

2023-07-05 08:38:48

GolangGo語(yǔ)言
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)

主站蜘蛛池模板: 欧美久久一区二区 | 国产精品美女久久久免费 | 男人的天堂久久 | 国产精品日韩欧美一区二区三区 | 欧美一级毛片久久99精品蜜桃 | 精品一区在线免费观看 | 人人澡人人射 | 日韩欧美专区 | 国产精品a免费一区久久电影 | 免费久久久久久 | 黄a网站| 亚洲精品视频在线播放 | 国产99久久精品 | 成人综合视频在线观看 | 国产精品18久久久久久白浆动漫 | 国产精品麻 | 成人一区二区三区 | 国产亚洲精品a | 欧美一级片在线 | 亚洲第一成年免费网站 | 天天爽天天操 | 成人中文字幕av | 日本不卡一区二区三区在线观看 | 日韩在线免费看 | 午夜免费视频 | 九九综合| 亚洲小视频在线观看 | 成人夜晚看av | 欧美激情一区 | 久久成人精品视频 | 欧美a级成人淫片免费看 | 久久噜噜噜精品国产亚洲综合 | 久久91精品国产 | 国产免费一区二区三区网站免费 | 国产精品视频一区二区三区 | 三级视频在线观看电影 | 亚洲视频中文字幕 | 亚洲一区国产精品 | 亚洲精品一区二三区不卡 | 五月激情久久 | 99久久精品一区二区毛片吞精 |