python安装MongoDB与运算符优先级
python安装MongoDB?

MongoDB 是目前最流行的 NoSQL 数据库之一,使用的数据类型 BSON(类似 JSON)。
PyMongo
Python 要连接 MongoDB 需要 MongoDB 驱动,这里我们使用 PyMongo 驱动来连接。
pip 安装
pip 是一个通用的 Python 包管理工具,提供了对 Python 包的查找、下载、安装、卸载的功能。
安装 pymongo:
$?python3?-m?pip3?install?pymongo
也可以指定安装的版本:
$?python3?-m?pip3?install?pymongo==3.5.1
更新 pymongo 命令:
$?python3?-m?pip3?install?--upgrade?pymongo
easy_install 安装
旧版的 Python 可以使用 easy_install 来安装,easy_install 也是 Python 包管理工具。
$?python?-m?easy_install?pymongo
更新 pymongo 命令:
$?python?-m?easy_install?-U?pymongo
测试 PyMongo
接下来我们可以创建一个测试文件 demo_test_mongodb.py,代码如下:
import?pymongo
创建数据库
创建一个数据库
创建数据库需要使用 MongoClient 对象,并且指定连接的 URL 地址和要创建的数据库名。
如下实例中,我们创建的数据库 runoobdb :
import?pymongo
myclient?=?pymongo.MongoClient("mongodb://localhost:27017/")
mydb?=?myclient["runoobdb"]
判断数据库是否已存在
我们可以读取 MongoDB 中的所有数据库,并判断指定的数据库是否存在:
import?pymongo
myclient?=?pymongo.MongoClient('mongodb://localhost:27017/')
dblist?=?myclient.list_database_names()
#?dblist?=?myclient.database_names()?
if?"runoobdb"?in?dblist:
??print("数据库已存在!")
Python运算符优先级?

所有的数学运算都是从左向右进行的,Python 语言中的大部分运算符也是从左向右结合的,只有单目运算符、赋值运算符和三目运算符例外,它们是从右向左结合的,也就是说,它们是从右向左运算的。
乘法和加法是两个可结合的运算符,也就是说,这两个运算符左右两边的操作数可以互换位置而不会影响结果。
运算符有不同的优先级,所谓优先级就是在表达式运算中的运算顺序。下表中列出了包括分隔符在内的所有运算符的优先级顺序。
| 运算符说明 | Python运算符 | 优先级 |
|---|---|---|
| 索引运算符 | x[index]或x[index:index2[:index3]] | 18、19 |
| 属性访问 | x.attrbute? | 17 |
| 乘方 | ** | 16 |
| 按位取反 | ~ | 15 |
| 符号运算符 | +或- | 14 |
| 乘、除 | *、/、//、% | 13 |
| 加、减 | +、- | 12 |
| 位移 | >>、<< | 11 |
| 按位与 | & | 10 |
| 按位异或 | ^ | 9 |
| 按位或 | | | 8 |
| 比较运算符 | ==、!=、>、>=、<、<=? | 7 |
| is运算符 | is、is not | 6 |
| in运算符 | in、not in | 5 |
| 逻辑非 | not | 4 |
| 逻辑与 | and | 3 |
| 逻辑或 | or | 2 |
根据表中运算符的优先级,我们分析 4+4<<2 语句的执行结果。程序先执行 4+4 得到结果 8,再执行 8<<2 得到 32。如果使用“()”就可以改变程序的执行顺序,比如 4+(4<<2),则先执行 4<<2 得到结果16,再执行 4+16 得到 20。
虽然 Python 运算符存在优先级的关系,但并不推荐过度依赖运算符的优先级,因为这会导致程序的可读性降低。因此,在这里要提醒读者:
不要把一个表达式写得过于复杂,如果一个表达式过于复杂,则把它分成几步来完成。
不要过多地依赖运算符的优先级来控制表达式的执行顺序,这样可读性太差,应尽量使用“()”来控制表达式的执行顺序。
?
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!