python3 c cpp擴充套件

2021-10-01 20:59:39 字數 2394 閱讀 5202

建立乙個檔案setup.py

第一行**匯入setup庫,其中name是打包的庫說明的.egg-info的檔名

version=「1.0」 這個說明檔名的字尾,如果不設定字尾會預設0.0.0

ext_modules=[extension(「mymod」, [「mymod.c」] )] 中mymode是對應的模組名稱和模組檔名,[「mymod.c」]裡面是編譯為庫的原始檔,可以是多個檔案,這裡是乙個python的list陣列。

from distutils.core import *

setup(

name=「mymod」, #打包檔名稱 庫說明檔案的檔名

version=「1.0」,

ext_modules=[extension(「mymod」, [「mymod.c」] )]

var ctx = context.background() // create a new context

var usercoll *mongo.collection // create a new collection

type user struct

// controllers

func examplemongo()

if res, err := insertoneuser(newuser); err != nil else

}// models

func insertoneuser(user user) (*mongo.insertoneresult, error) )

return res, err

}多個新增

// models

func insertmanyusers(users user) (*mongo.insertmanyresult, error) ,

bson.m})

return res, err

}單個刪除

// controllers

func examplemongo()

filterdeleteone := bson.m

if res, err := deleteoneuser(filterdeleteone); err != nil else

}// models

func deleteoneuser(filter bson.m) (*mongo.deleteresult, error)

多個刪除

// controllers

func examplemongo() }

if res, err := deletemanyusers(filterdeletemany); err != nil else

}// models

func deletemanyusers(filter bson.m) (*mongo.deleteresult, error)

// controllers

func examplemongo()

filterfindone := bson.m

if res, err := findoneuser(filterfindone); err != nil else

}// models

func findoneuser(filter bson.m) (user, error)

result := usercoll.findone(ctx, filter)

err := result.decode(&msg)

return msg, err

}多個查詢

// controllers

func examplemongo()

if res, err := findmanyusers(filterfindmany); err != nil else

}單個改

// controllers

func examplemongo()

update := bson.m

if res, err := updateoneuser(filter, update); err != nil else

}// models

func updateoneuser(filter bson.m, update bson.m) (*mongo.updateresult, error)

多個改// controllers

func examplemongo()

update := bson.m

if res, err := updatemanyusers(filter, update); err != nil else

}// models

func updatemanyusers(filter bson.m, update bson.m) (*mongo.updateresult, error)

Python3中的擴充套件序列解包

在python中的一般的賦值語句格式如下 spam spam 基本賦值形式 spam,ham spam hum 元祖賦值形式 spam,ham spam hum 列表賦值形式 a,b,c,d spam 序列賦值形式 spam ham lunch 多目標賦值形式 spams 10 spams 1 增強...

c 擴充套件python

include int fact int n pyobject warp fact pyobject self,pyobject args result fact n return py buildvalue i result static pymethoddef examplemethods ex...

python核心擴充套件

def get fb num 初始化數列 fb list 1,2 for i in range 0,num 2 初始化列表最後一位為0,防止報錯 fb list i 2 fb list i fb list i 1 return fb list從上我們得到了乙個固定位數的斐波那契數列,由此引申出乙個問...