2014-09-22 2 views
0

저는 PHP 코드를 MySql 테이블에 데이터를 삽입하는 파이썬 코드로 변환합니다.파이썬에서 변수가있는 수정 된 매개 변수 이름

명명 규칙에 기초하여 네 가지 컬럼있다 : image_ + [HQ, 제곱, LQ 엄지] + _url

(Laravel DB 조회하여) 다음과 같이 PHP 코드 :

DB::table('items') 
       ->insertGetId(array(
        'title' => $title, 
        'image_' . $quality . '_url' => $amazon_url, 
       )); 
내가 파이썬 REV없이 동일한 결과를 얻을 수있는 방법

item_ins = items_tbl.insert().values(title=item_title, 
                image_+quality+_url=amazon_url 

      ) 

: 저 구문 오류를 제공하는 (SqlAlchem ​​y의 코어를 사용하여)

대응 파이썬 코드 if/else 문에 기록 하시겠습니까?

답변

1

파이썬 함수 호출에서 가변적으로 이름이 지정된 키워드 인수를 사용할 수 없습니다. 그러나 키워드 인수에 dict를 확장 할 수 있습니다 :

item_ins = items_tbl.insert().values(**{'title' : item_title, 
             'image_'+quality+'_url' : amazon_url}) 

예를 들어 quality=='hq' 경우,이 동등 또한 구문에 사용하려고 있음을 유의

item_ins = items_tbl.insert().values(title = item_title, 
            image_hq_url: amazon_url) 

를 호출, 당신은 시도 image__url을 문자열 리터럴로 처리하고 quality을 변수로 처리하여 구문 간의 구별을하지 않아도됩니다. 일할 방법이 없습니다.

+0

감사합니다. 그것은 많은 도움이됩니다. – egekhter

관련 문제