代码为python 3.4版本
#字母的数字的相互转换
#ord:字母转数字
ord('A')
#chr:数字转字母
chr(65)
#python 的三元表达式的用法
#给定数字1或0 转为是与否
k = '1'
d = '是' if int(k) else '否'
#python lambda表达式
lambda表达式可以很方便的用来代替简单函数
#float转str 去掉末尾的'.0'
>>> func = lambda x:str(x) if int(str(x).split('.')[1]) else str(x).split('.')[0]
>>> func(2.0)
相当于
def func(x):
if int(str(x).split('.')[1]):
x = str(x)
else:
x = str(x).split('.')[0]
return x
print (func(2.0))
#二维元组转列表
a = (
('魏登武', 18912347226.0, '农商行',0.0, 4.0, 0.0, 11820.0, 0.0, 0.0, 11560.0, 0.0, '0', '0.08', '70', '0', '张明锋'),
('魏德华', 18712345620.0, None,0.0, 3.0, 10000.0, 5000.0, 4000.0, 0.0, 0.0, 0.0, None, '0.05', '70', '1', '贺世海')
)
b = [list(i) for i in a]
print (b)
#列表推导式嵌套
#二维元组转列表
#win32com操作excel--->sheet.Range().value得到 a 这样的元组
#sheet.Range(sheet.Cells(row1, col1), sheet.Cells(row2, col2)).Value
a = (
('魏登武', 18912347226.0, '农商行',0.0, 4.0, 0.0, 11820.0, 0.0, 0.0, 11560.0, 0.0, '0', '0.08', '70', '0', '张世锋'),
('魏德华', 18712345620.0, None,0.0, 3.0, 10000.0, 5000.0, 4000.0, 0.0, 0.0, 0.0, None, '0.05', '70', '1', '贺明海')
)
b = [list(i) for i in a]#元组转列表
def func(i):
if i == None:
i = ''
elif type(i) == float:
i = str(i).split('.')[0] if str(i).split('.')[1] == '0' else str(i)
return i
#列表推导式嵌套
c = [[func(j) for j in i] for i in b]#替换二维列表里的None和float转str并去掉小数为0 的 ‘.0’
print (c)
#ord:字母转数字
ord('A')
#chr:数字转字母chr(65)
#获取最大行数
#n = sheet.UsedRange.Rows.Count