首先,所有相关代码
main.py
import string
import app
group1=[ "spc", "bspc",",","."]#letters, space, backspace(spans mult layers)
# add in letters one at a time
for s in string.ascii_lowercase:
group1.append(s)
group2=[0,1,2,3,4,5,6,7,8,9, "tab ","ent","lAR" ,"rAR" , "uAR", "dAR"]
group3= []
for s in string.punctuation:
group3.append(s)#punc(spans mult layers)
group4=["copy","cut","paste","save","print","cmdW","quit","alf","sWDW"] #kb shortcut
masterGroup=[group1,group2,group3,group4]
myApp =app({"testFKey":[3,2,2]})
Run Code Online (Sandbox Code Playgroud)
app.py
import tkinter as tk
import static_keys
import dynamic_keys
import key_labels
class app(tk.Frame):
def __init__(inputDict,self, master=None,):
tk.Frame.__init__(self, master)
self.grid(sticky=tk.N+tk.S+tk.E+tk.W)
self.createWidgets(self, inputDict)
def createWidgets(self,inDict):
top=self.winfo_toplevel()
top.rowconfigure(0, weight=1)
top.columnconfigure(0, weight=1)
self.rowconfigure(0, weight=1)
self.columnconfigure(0, weight=1) …
Run Code Online (Sandbox Code Playgroud) 我在xib中有uiButtons.我为所有人设置了恢复标识.我需要打印这些恢复ID列表.为此,我在viewDidload中调用以下代码:
-(void)loadViewFromNIB:(NSString *)nibName owner:(id)owner
{
NSArray *objects = [[NSBundle mainBundle] loadNibNamed:nibName owner:owner options:nil];
NSArray *subviews = [[objects objectAtIndex:0]subviews];
for (id key in subviews) {
[key addTarget:self
action:@selector(touchB:)
forControlEvents:UIControlEventTouchDown];
[key addTarget:self
action:@selector(touchE:)
forControlEvents:UIControlEventTouchUpInside];
NSString *ident = self.restorationIdentifier;
NSLog(@"%@",ident);
}
Run Code Online (Sandbox Code Playgroud)
我得到这个输出:
2013-02-24 13:05:38.817 fozbKEY[3939:11603] (null)
2013-02-24 13:05:38.822 fozbKEY[3939:11603] (null)
2013-02-24 13:05:38.824 fozbKEY[3939:11603] (null)
Run Code Online (Sandbox Code Playgroud)
这只是重复了一堆.我做错了什么?我如何解决它?谢谢!
我有python 3代码不能按预期工作:
def addFunc(x,y):
print (x+y)
def subABC(x,y,z):
print (x-y-z)
def doublePower(base,exp):
print(2*base**exp)
def RootFunc(inputDict):
for k,v in inputDict.items():
if v[0]==1:
d[k] = addFunc(*v[1:])
elif v[0] ==2:
d[k] = subABC(*v[1:])
elif v[0]==3:
d[k] = doublePower(*v[1:])
d={"s1_7":[1,5,2],"d1_6":[2,12,3,3],"e1_3200":[3,40,2],"s2_13":[1,6,7],"d2_30":[2,42,2,10]}
RootFunc(d)
#test to make sure key var assignment works
print(d)
Run Code Online (Sandbox Code Playgroud)
我明白了:
{'d2_30': None, 's2_13': None, 's1_7': None, 'e1_3200': None, 'd1_6': None}
Run Code Online (Sandbox Code Playgroud)
我期望:
{'d2_30': 30, 's2_13': 13, 's1_7': 7, 'e1_3200': 3200, 'd1_6': 6}
Run Code Online (Sandbox Code Playgroud)
怎么了?
半相关:我知道字典是无序的,但有什么理由为什么python选择了这个命令?它是通过随机数发生器运行的吗?
虽然图片基本上显示了我想做的事情,但是:
如果可能,应使用网格。我会用python3
python ×3
python-3.x ×3
tkinter ×2
dictionary ×1
for-loop ×1
ios ×1
key-value ×1
nsarray ×1
nslog ×1
null ×1
objective-c ×1
ui-design ×1