1. 程式人生 > >eval實現字串化前的功能實現,有效疊加相同程式碼

eval實現字串化前的功能實現,有效疊加相同程式碼

def show(con,col_l,symbol,condition):
    con_name, con_value = con.split(symbol)  # con_name = 'age',con_value = 20
    for line_lst in read_file():
        num = name_value[con_name]  # num = 2
        if eval(condition):
            for col in col_l:  # ['name','age']
                print(line_lst[name_value[col]], end='
') print() def select(sql): # sql = 'select name,age where age>20' col_l, con = format_sql(sql) # col_l = ['name', 'age'],con = age>20 if '>' in con: show(con,col_l,'>','int(con_value) < int(line_lst[num])') if '<' in con: show(con, col_l,
'<', 'int(con_value) > int(line_lst[num])') if '=' in con: show(con, col_l, '=', 'con_value == line_lst[num]') if 'like' in con: show(con, col_l, 'like', 'con_value in line_lst[num]')