2017-10-11 11 views
0
def build(string, path, name, logo=""): 
     qr = qrcode.QRCode(
      version = 2, 
      error_correction = qrcode.constants.ERROR_CORRECT_H, 
      box_size = 10, 
      border = 1 
     ) 
     qr.add_data(string) 
     qr.make(fit = True) 
     img = qr.make_image() 
     img = img.convert("RGBA") 
     icon = Image.open('img/'+logo+'.png') 
     img_w, img_h = img.size 
     factor = 4 
     size_w = int(img_w/factor) 
     size_h = int(img_h/factor) 
     icon_w, icon_h = icon.size 
     if icon_w > size_w: icon_w = size_w 
     if icon_h > size_h: icon_h = size_h 
     icon = icon.resize((icon_w, icon_h), Image.ANTIALIAS) 
     w = int((img_w - icon_w)/2) 
     h = int((img_h - icon_h)/2) 
     icon = icon.convert("RGBA") 
     newimg = Image.new("RGBA", (icon_w + 8, icon_h + 8), (255, 255, 255)) 
     img.paste(newimg, (w-4, h-4), newimg) 
     img.paste(icon, (w, h), icon) 
     img.save(path + name + '.png', quality = 100) 

if __name__ == "__main__": 
     argparser = argparse.ArgumentParser() 
     args = argparser.parse_args() 
     argparser.add_argument('Words') 
     argparser.add_argument('-d', '--directory', default = os.getcwd()) 
     argparser.add_argument('-n', '--name') 
     argparser.add_argument('-l', '--logo') 
     build(args.Words, args.directory, args.name, args.logo) 

私はそれをpython2error:認識できない引数:

python code.py http://www.xx.com -n client -l client -d ./

を実行すると、それは

usage: code.py [-h]

code.py: error: unrecognized arguments: http://www.xx.com -n client -l client -d ./

がどのように私はそれが正常に動作させることを示していますか?私を助けてください!

+3

まず、コードを正しくインデントしてください。 – Ludisposed

答えて

1

ライン

args = argparser.parse_args() 

ニーズはあなたが前に、パーサーを使用しようとしていたライン

argparser.add_argument('Words') 
argparser.add_argument('-d', '--directory', default = os.getcwd()) 
argparser.add_argument('-n', '--name') 
argparser.add_argument('-l', '--logo') 

た後、他の言葉で、パーサの設定後を移動しますパーサーに位置引数、-d-n-lを伝えました。だから、明らかに、それらを解析するように頼まれたときには認識されませんでした。

+0

多くのことが考えられます。私は不注意だった。 – XiaoHu

関連する問題