2017-06-06 64 views
0

因此,我正在使用Jython SikuliX编写一个程序,通过输入三个字母输入(MAG),然后向末尾添加数字(1)然后递增数字对每个标签(MAG1 - MAG2 - MAG3等)+1 +1在Jython中添加字符串的奇怪问题Sikulix

然而,这里的技巧是我需要字母和数字的组合总是6个字符的长度(所以MAG001或MAG010或MAG100)。

我已经得到了数字连接,但是我遇到了一个超过100的任何数字的奇怪问题。从标签9到标签10以及上面的工作完美(MAG009 - MAG010 - MAG011等)当我到达MAG99然后去MAG100我收到一个错误:

[error] --- Traceback --- error source first line: module (function) 
statement 26: main (name_change) name = name 
[error] --- Traceback --- end -------------- 

我不知道这是为什么...代码如下。

import time 

name1 = str(input("First three letters of product name")) 
labels = int(input("At what number do you want the labels to stop?")) 

a = int(input("What number should the labels start at?")) 
e = "00" 
d = "0" 



find("1496686601617.png") 
doubleClick("1496686607803.png") 

def name_change(name1, a): 
    a = str(a) 
    c = len("%s%s" % (name1, a)) 

    if c == 4: 
     name = ("%s%s" % (name1, e)) 

    if c == 5: 
     name = ("%s%s" % (name1, d)) 

    if c == 6: 
     name = name 

    a = int(a) 
    return name 

def label_make(name, a): 
    click("1496688531026.png") 
    type("0000") 
    rightClick("1496688447045.png") 
    click("Select_All.png") 
    type("%s%r" % (name, a)) 
    click("1496686753618.png") 
    click("Save As-1.png") 
    time.sleep(1) 
    type("%s%r" % (name, a)) 
    click("1496687258684.png") 

    a = a + 1 
    return a 

while labels >= a: 
    name = name_change(name1, a) 
    a = label_make(name, a) 

任何帮助将不胜感激。

回答

0

没关系,我解决我自己的问题:

我就回不涉及功能和指定的变量名称,如果它已经是6个字符长,它的工作原理是旧版本。以下代码:

import time 

name1 = str(input("First three letters of product name")) 
labels = int(input("At what number do you want the labels to stop?")) 

a = int(input("What number should the labels start at?")) 
e = "00" 
d = "0" 



find("1496686601617.png") 
doubleClick("1496686607803.png") 

while labels >= a: 
    #a = str(a) 
    c = len("%s%s" % (name1, a)) 

    if c == 4: 
     name = ("%s%s" % (name1, e)) 

    if c == 5: 
     name = ("%s%s" % (name1, d)) 

    if c == 6: 
     name = name1 

    #a = int(a) 


    click("1496688531026.png") 
    type("0000") 
    rightClick("1496688447045.png") 
    click("Select_All.png") 
    type("%s%r" % (name, a)) 
    click("1496686753618.png") 
    click("Save As-1.png") 
    time.sleep(1) 
    type("%s%r" % (name, a)) 
    click("1496687258684.png") 
    #a = int(a) 
    a = a + 1