Python/Hy with SQLite
10085 단어 파이썬SQLite3lisp-stylehy추상 구문 트리
Python 및 Hy의 경우 SQLite 데이터베이스를 사용할 때의 대조 샘플 코드.
파이썬과 하이 사이의 관계
Hy는 python의 abstract syntax tree에 Lisp 언어의 구문 인 S 표현식을 변환하여 python 코드로 실행하는 S 표현식을 사용하는 언어입니다.
조금 무슨 모르겠어요. 해보면, 이런 일.
아래 스크린 샷은 Hy로 작성된 S 표현식 프로그램 (상부)이 실행될 때 파이썬 코드 (하단)로 변환되는 모습을 보여줍니다.
칼럼
Python의 abstract syntax tree (추상 구문 트리) 란 무엇입니까?
htps : // 코 m / 어서 r 메조 - fr / ms / 3 꺾어 7645bd7d4414d9607
htps : // 그럼. m.ぃきぺぢ아. rg/우키/%에6%96%87%에8%84%88%에8%87%아%에7%94%B1%에6%96%87%에6%B3%95
htps //w w. krk0. 이 m / 이렇게 xt-f r-g 라마 r /
htps //w w. 모모야마 토끼. 코 m / 엔트리 / 인후 아우 토마 톤 07
( "Python의 abstract syntax tree (추상 구문 트리)는 무엇?"에서 검색하면 좋을까.)
Hy의 소개와 함께 저자 Paul Tagliamonte에 대한 인터뷰 (2013-15 년)가 게재되어있다
htps : ///주엔. 단지.んふぉ/테ぇーぇㅇrㅡㅜㅜㅜㅜㅜㅜㅜ
htps //w w. py 덴포 d 또는 st. 이 m / 에피소데 - 23 - hy ㅁ g - 이것 - ゔ ぇ ぺ rs /
나무(추상 구문 나무)는 뭐지?
htps //w w.ぁmb다니. 코 m / p 로즈 cts / 루 by 루 by
구문 트리가있는 풍경
h tps : //ぉゔぇるby. 네 t/쟈/rhg/보오 k/synt 네. HTML
Speaker: Paul Tagliamonte
This talk will cover the internals of Python, such AST, Import hooks, creating a console, and a very brief overview of Python internal formats (such as pyc files), by way of looking over the implementation of a Lisp called "Hy". No Lisp knowledge is required.
Slides can be found at: htps : // speake r에서 ck. 코 m/py 콘 2014 and htps : // 기주 b. 코 m / Py 곤 / 2014-s에서 s
htps: //같다. 베 / 아만 1 아오 k 치? t=355
웹 인터프리터
htps : //hy ぁ g. 기주 b. 이오 / hy - rp 있어
명령줄에서 입력된 문자열을 포함하는 SQLite 데이터베이스 파일을 만드는 샘플입니다.
파이썬
pypysqlite.py
pypysqlite.pyimport sqlite3
import os
import sys
SQL = """
create table tbl_Py (
id INTEGER PRIMARY KEY,
url text,
title text
);
"""
current_name = sys.argv[1]
db = sqlite3.connect("Py_" + current_name + ".db")
cur = db.cursor()
db.execute(SQL)
db.commit()
터미널 (그 검은 화면)에서 실행
python pypysqlite.py pysqlite
Py_pysqlite.db라는 데이터베이스 파일이 생성됩니다.
hy
hyhysqlite.hy
hyhysqlite.hy(import sqlite3)
(import os)
(import sys)
(setv SQL "create table tbl_Hy (id INTEGER PRIMARY KEY,url text,title text)")
(setv current-name (get sys.argv 1))
(setv db (.connect sqlite3 (+ "Hy_" current-name ".db")))
(setv cur (.cursor db))
(.execute db SQL)
;;(db.execute SQL)
(.commit db)
;;(db.commit)
터미널(검정 화면)에서 실행
hy hyhysqlite.hy hysqlite
Hy_hysqlite.db라는 데이터베이스 파일이 생성됩니다.
데이터베이스에 데이터를 삽입하는 샘플
파이썬
pypysqlite.pycount = 1
url = "https://qiita.com/dauuricus/items/d8bd9d3301409f51c64e"
title = "Python / Hy with SQLite"
cur.execute("insert into tbl_Py(id,url,title) values(?,?,?) ;",[count,url,title])
db.commit()
hy
hyhysqlite.hy(setv count 1
url "https://qiita.com/dauuricus/items/d8bd9d3301409f51c64e"
title "Python / Hy with SQLite")
(cur.execute "insert into tbl_Hy(id,url,title) values(?,?,?)"
[count url title])
(.commit db)
;;(db.commit)
SQLite의 이점은 데이터베이스가 파일이므로, 이것은 단점이기도 하지만, 비밀번호나 소유자의 제한 없이 열람과 편집이 가능하다.
예를 들어 SQLite 실행 프로그램이 없어도 온라인 SQLite 실행 환경에 파일을 전달하면 확인할 수 있습니다.
import sqlite3
import os
import sys
SQL = """
create table tbl_Py (
id INTEGER PRIMARY KEY,
url text,
title text
);
"""
current_name = sys.argv[1]
db = sqlite3.connect("Py_" + current_name + ".db")
cur = db.cursor()
db.execute(SQL)
db.commit()
python pypysqlite.py pysqlite
(import sqlite3)
(import os)
(import sys)
(setv SQL "create table tbl_Hy (id INTEGER PRIMARY KEY,url text,title text)")
(setv current-name (get sys.argv 1))
(setv db (.connect sqlite3 (+ "Hy_" current-name ".db")))
(setv cur (.cursor db))
(.execute db SQL)
;;(db.execute SQL)
(.commit db)
;;(db.commit)
hy hyhysqlite.hy hysqlite
count = 1
url = "https://qiita.com/dauuricus/items/d8bd9d3301409f51c64e"
title = "Python / Hy with SQLite"
cur.execute("insert into tbl_Py(id,url,title) values(?,?,?) ;",[count,url,title])
db.commit()
(setv count 1
url "https://qiita.com/dauuricus/items/d8bd9d3301409f51c64e"
title "Python / Hy with SQLite")
(cur.execute "insert into tbl_Hy(id,url,title) values(?,?,?)"
[count url title])
(.commit db)
;;(db.commit)
SQL 명령
.schema
SELECT * FROM tbl_Hy ;
Reference
이 문제에 관하여(Python/Hy with SQLite), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/dauuricus/items/d8bd9d3301409f51c64e텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)