标题最近在开发中须要用到web端开发工具、须要用python工具。偶然发现微软的良心之做:Visual Studio Code,这个大小才几十兆的轻量级代码编辑器,功能倒是重量级的,经过插件的方法,,支持几乎全部主流的开发语言的语法高亮、智能代码补全、自定义热键、括号匹配、代码片断、代码对比 Diff、GIT 等特性,支持插件扩展,并针对网页开发和云端应用开发作了优化。软件跨平台支持 Win、Mac 以及 Linux。
[最佳填坑方案出炉,点击查看]
有了Visual Studio Code(如下简称vsc),能够一个编辑器搞定多个语言编程开发了,界面UI还美美哒,简直不要太爽~python
不过今天在使用vsc写个简单的Python3爬虫脚本时,却被坑了一道,也是本身对Python语言不熟悉的缘由吧。由于脚本中须要把数据存储到数据库,我使用的是PyMysql,而vsc只是简单的安装了Python3支持插件,下面看案发现场:web
# ...前面省略无数行代码 try: insertSql = "insert into test (name, path, platform) values ('%s', '%s', '%s');" % ('美食', '/ch/news_food/', 'toutiao') cursor.execute(insertSql) db.commit cursor.close except: db.rollback finally: db.close # ...后面省去了N滴眼泪~
# ...前面省略无数行代码 try: insertSql = "insert into test (name, path, platform) values ('%s', '%s', '%s');" % ('美食', '/ch/news_food/', 'toutiao') cursor.execute(insertSql) db.commit cursor.close except: db.rollback finally: db.close # ...后面省去了N滴眼泪~
就是这个智能补全,很爽快的就按Tab选中了,注意看图:sql
自动补全后是这样的:数据库
而后很愉快的执行了,也没报错,可是数据库就是没有出现这个数据,一次,两次,…好多草泥马在犇腾~编程
我就纳了闷了,手动把这个insertSql的内容直接复制粘贴到sqlyog里面执行,买了疯了~ 居然有,可是一看id却不是1(对于一个空表插入一条数据,按道理应该是1),我这个表的id设置为bigint 的自增类型,而后我又在phthon这个脚本执行一次,而后又在sqlyog再执行,id变为3(不是2….),也就是说,用python脚本插入操做,数据没写进去,可是自增的主键值却是记录下来了~编辑器
后台仔细一看,艾玛呀~ db、cursor的后面点引用的几个方法,名字后面应该带 ()
括号的呀… 容错力太强的python解析器,让我也忘了刚开始学编程时属性跟方法的概念… 垂手顿足一番后,修改成以下,执行,欧了~svg
# ...前面省略无数行代码 try: insertSql = "insert into test (name, path, platform) values ('%s', '%s', '%s');" % ('美食', '/ch/news_food/', 'toutiao') cursor.execute(insertSql) db.commit() cursor.close() except: db.rollback() finally: db.close() # ...后面省去了N滴眼泪~
# ...前面省略无数行代码 try: insertSql = "insert into test (name, path, platform) values ('%s', '%s', '%s');" % ('美食', '/ch/news_food/', 'toutiao') cursor.execute(insertSql) db.commit() cursor.close() except: db.rollback() finally: db.close() # ...后面省去了N滴眼泪~