37,743
社区成员




file1=open('%s' % mgt) #从mgt文件中读取信息
global line1
line1=[]
global line1num
line1num=0
for eachline in file1.readlines():
line1.append(eachline)
line1num+=1
global components
components=[]
global compnum
compnum=0
i=0
cps=0
cpo=0
while i<line1num:
if line1[i]=='*MEMBER ; Member'+'\n':
cps=i+1
break
i+=1
cpt=cps
if cpt!=0:
while cpt<line1num:
if line1[cpt]=='\n':
cpo=cpt
break
cpt+=1
j=0
while cps<cpo:
line1[cps]=line1[cps].strip()
r=re.compile(',')
comdata=[]
comdata=r.split(line1[cps])
components.append([])
i=0
while i<len(comdata):
components[j].append(comdata[i])
i+=1
j+=1
compnum+=1
cps+=1
for each in components:
each.pop(1)
file7=open('%s' % rcs1) #从rcs文件中读取信息
#此时line2不是全局变量
line2=[]
line2num=0
for eachline in file7.readlines():
line2.append(eachline)
line2num+=1
file7.close()
combeamnum=0
line3=[]
line3num=0
line5=[]
line6=[]
line7=[]
line8=[]
i=0
while i<line2num:
if line2[i].count('kN, m')!=0:
cb=i+1
break
i+=1
ct=cb
if ct!=0:
while ct<line2num:
if line2[ct].count('=')==3:
line3.append(line2[ct])
line3num+=1
if line2[ct].count('=')==2:
line3.append(line2[ct])
line3num+=1
if line2[ct].count('@')!=0:
line3.append(line2[ct])
line3num+=1
ct+=1
i=0
while i<line3num:
line3[i]=line3[i].strip()
line3[i+1]=line3[i+1].strip()
line3[i+2]=line3[i+2].strip()
line3[i+3]=line3[i+3].strip()
line3[i+4]=line3[i+4].strip()
line3[i+5]=line3[i+5].strip()
r=re.compile(' *') #利用正则表达式,' *'对应' ',' ',' ',' '这一类
line4data=[]
line4data1=[]
line4data2=[]
line4data3=[]
line4data4=[]
line4data5=[]
line4data=r.split(line3[i])
line4data1=r.split(line3[i+1])
line4data2=r.split(line3[i+2])
line4data3=r.split(line3[i+3])
line4data4=r.split(line3[i+4])
line4data5=r.split(line3[i+5])
line4data[2]=line4data[2].strip()
line4data[2]=line4data[2].rstrip(',')
line4data[5]=line4data[5].strip()
line5.append([int(line4data[2])])
line5[i].append(int(line4data[5]))
line4data1[2]=line4data1[2].strip()
line4data1[2]=line4data1[2].rstrip(',')
line4data1[5]=line4data1[5].strip()
line5.append([float(line4data1[2])])
line5[i+1].append(float(line4data1[5]))
line4data2[5]=line4data2[5].strip()
line4data2[5]=line4data2[5].rstrip(',')
line4data2[5]='HRB'+str(int(line4data2[5])/1000)
line5.append([line4data2[5]])
line4data3[5]=line4data3[5].strip()
line4data3[6]=line4data3[6].strip()
line4data3[6]=line4data3[6].split('-')
line4data3[6][1]=line4data3[6][1].lstrip('d')
line4data3[10]=line4data3[10].strip()
line4data3[11]=line4data3[11].strip()
line4data3[11]=line4data3[11].split('-')
line4data3[11][1]=line4data3[11][1].lstrip('d')
line5.append([float(line4data3[5])])
line5[i+3].append(int(line4data3[6][0]))
line5[i+3].append(int(line4data3[6][1]))
line5[i+3].append(float(line4data3[10]))
line5[i+3].append(int(line4data3[11][0]))
line5[i+3].append(int(line4data3[11][1]))
line4data4[5]=line4data4[5].strip()
line4data4[6]=line4data4[6].strip()
line4data4[6]=line4data4[6].split('-')
line4data4[6][1]=line4data4[6][1].lstrip('d')
line4data4[10]=line4data4[10].strip()
line4data4[11]=line4data4[11].strip()
line4data4[11]=line4data4[11].split('-')
line4data4[11][1]=line4data4[11][1].lstrip('d')
line5.append([float(line4data4[5])])
line5[i+4].append(int(line4data4[6][0]))
line5[i+4].append(int(line4data4[6][1]))
line5[i+4].append(float(line4data4[10]))
line5[i+4].append(int(line4data4[11][0]))
line5[i+4].append(int(line4data4[11][1]))
line4data5[5]=line4data5[5].strip()
line4data5[6]=line4data5[6].strip()
line4data5[6]=line4data5[6].split('-')
line4data5[6][1]=line4data5[6][1].lstrip('d')
line4data5[10]=line4data5[10].strip()
line4data5[11]=line4data5[11].strip()
line4data5[11]=line4data5[11].split('-')
line4data5[11][1]=line4data5[11][1].lstrip('d')
line5.append([float(line4data5[5])])
line5[i+5].append(int(line4data5[6][0]))
line5[i+5].append(int(line4data5[6][1]))
line5[i+5].append(float(line4data5[10]))
line5[i+5].append(int(line4data5[11][0]))
line5[i+5].append(int(line4data5[11][1]))
i+=6
i=0
j=0
while j<len(line5):
line6.append([])
line6[i]=line5[j]+line5[j+1]+line5[j+2]+line5[j+3]
line7.append([])
line7[i]=line5[j]+line5[j+1]+line5[j+2]+line5[j+4]
line8.append([])
line8[i]=line5[j]+line5[j+1]+line5[j+2]+line5[j+5]
combeamnum+=1
i+=1
j+=6
j=0
print line6
print len(line6)
print combeamnum
print components
print len(components)
print compnum
while j<combeamnum:
if section[int(line6[j][1])-1][1]=='SB':
B=float(line6[j][2])
H=float(line6[j][3])
if B==0.1:
B=0.1001
if H==0.1:
H=0.1001
k=0
while k<compnum:
if int(components[k][0])==int(line6[j][0]): #根据单元来对应截面,然后求得等效截面
if len(components[k])==1: #梁没有被分割
if int(line6[j][5])+int(line6[j][8])<int(line8[j][5])+int(line8[j][8]):
....下面还很长 不贴出来了 运行后 结果是
[[1, 1, 0.25, 0.5998, 'HRB335', 0.000297, 2, 20, 0.00029997, 2, 20], [2, 1, 0.25, 0.598, 'HRB335', 0.000501, 2, 20, 0.0002997, 2, 20], [3, 1, 0.25, 0.5998, 'HRB335', 0.0005001, 2, 20, 0.00029997, 2, 20], [4, 1, 0.25, 0.5998, 'HRB335', 0.0005001, 2, 20, 0.0002997, 2, 20], [5, 1, 0.25, 0.5998, 'HRB335', 0.00050001, 2, 20, 0.00040002, 2, 20], [6, 1, 0.25, 0.5998, 'HRB335', 0.0002997, 2, 20, 0.0002997, 2, 20], [7, 1, 0.25, 0.5998, 'HRB335', 0.000297, 2, 20, 0.0002997, 2, 20], [8, 1, 0.25, 0.59998, 'HRB335', 0.00998, 3, 20, 0.00029997, 2, 20]]
8
8
[['1', ' 571', ' 572'], ['2', ' 603', ' 604'], ['3', ' 635', ' 636'], ['4', ' 673', ' 674'], ['5', ' 559', ' 560'], ['6', ' 201'], ['7', ' 213'], ['8', ' 661', ' 662'], ['9', ' 544', ' 546'], ['10', ' 227'], ['11', ' 239'], ['12', ' 648', ' 650'], ['13', ' 543', ' 545'], ['14', ' 583', ' 584'], ['15', ' 615', ' 616'], ['16', ' 647', ' 649'], ['17', ' 570', ' 569'], ['18', ' 558', ' 557'], ['19', ' 542', ' 541'], ['20', ' 574', ' 573'], ['21'], ['22', ' 548', ' 547']]
22
22
Exception in Tkinter callback
Traceback (most recent call last):
File "D:\Program Files\Python25\lib\lib-tk\Tkinter.py", line 1403, in __call__
return self.func(*args)
File "C:/Users/caizhen/Desktop/M2A0404调试.py", line 9970, in r5progress
compbeamsecbar()
File "C:/Users/caizhen/Desktop/M2A0404调试.py", line 1869, in compbeamsecbar
if int(components[k][0])==int(line6[j][0]): #根据单元来对应截面,然后求得等效截面
IndexError: list index out of range
# 这2行就是log了
print components,len(components)
print line6,len(line6)
# 怀疑下面这行有问题
if int(components[k][0])==int(line6[j][0]): #根据单元来对应截面,然后求得等效截面