Python自学规划,如何一步步学习编程[图]

学习小博客 2020-11-14 01:07:18
Python 自学 一步 规划 一步步


相信有很多人在学习python的时候,总是抱着一腔热血,然后在b站观看几个站主的教学视频,又或者收集了一些资料和书籍。过了一段时间,就失去了继续学习的动力。
通过我平时的观察,发现想学习python的很多。但是很多人只是停留在表面,总是三天打鱼,两天晒网。大多数人在学习的时候只是停留在嘴上,连Python的运行环境都没安装。如果Python运行环境都不安装,难道要靠脑补敲代码的吗?如果真心想自学Python,就应该安装好运行环境,把书籍上的代码一行一行敲出来,这样才是程序员学习该有的样子。
在学习的时候不用收集太多的资料,每本书都有自己的知识体系。好好选一本书籍慢慢去啃,把上面的代码都敲一遍,绝对强过你什么都不做只是盯着视频学习的效果。

Python自学规划,如何一步步学习编程[图]

我有一些Python学习资料,有想要学习的朋友,可以找我交流。
Python数据库编程
DB-API
Python提供了统一的DB-API接口来实现对数据库的访问,DB-API接口屏蔽了访问不同数据库的所有底层细节,Python应用程序调用DB-API接口可以实现对不同数据库的访问。
DB-API接口主要包含三个类模块,分别是Connection、Cursor、Exception。Connection类模块主要实现数据库的连接、数据库操作事务的提交和回滚,同时Connection会创建一个Cursor对象;Cursor类模块可以执行SQL命令,对SQL查询的结果集进行处理;Exception类模块为数据库操作过程中出现的异常和错误提供信息。
Connection类模块
连接数据库
Connection类模块提供了connect构造函数,用于创建一个Connection对象,该对象将连接正在运行的数据库。下表是调用connect方法时,需要传入的参数。
连接数据库样例代码如下:import pymysql as mysqlconn = mysql .connect(dsn='myhost:MYDB', user='guido', password='234$')
其中,conn用于接收connect方法返回的Connection对象,“myhost:MYDB”是数据库服务器的访问地址,“guido”是登录数据库服务器的用户名,“234$”是登录数据库服务器的用户密码。
关闭数据库
当需要关闭数据库连接时,可以调用Connection对象的close方法来关闭数据库连接,释放数据库连接资源。
关闭数据库连接样例代码如下:conn.close()
提交数据库事务
如果需要将挂起的数据库事务提交到数据库,可以调用Connection对象的commit方法来提交挂起的事务。
提交事务样例代码如下:conn. commit()
回滚当前事务
如果提交到数据库的事务在处理过程中发生了异常或出错,需要对已进行的数据库操作进行回滚处理,此时可以调用Connection对象的rollback方法来回滚当前提交的事务。
回滚事务样例代码如下:conn. rollback ()
创建Cursor对象
数据库连接成功后,需要获取Cursor对象,通过Cursor对象来执行SQL命令。调用Connection对象的cursor方法来创建一个Cursor对象。
创建Cursor对象样例代码如下:cursor = conn.cursor()
Cursor类模块
执行SQL命令
对数据库的访问主要是对数据库表记录的增删改查,增删改查都需要执行SQL命令。调用Cursor对象的execute方法可以执行SQL命令。下表是调用execute方法时,需要传入的参数。
执行SQL命令样例代码如下:# 获取Cursor对象cursor = conn..cursor()# SQL 查询sql = "select * from table_name where 1=1"try:# 执行SQL语句cursor.execute(sql)# 提交到数据库执行except:# 发生错误时回滚
简介:Python是一种跨平台的计算机程序设计语言。 是一个高层次的结合了解释性、编译性、互动性和面向对象的脚本语言。推荐一个好地方作文300字http://www.yuananren.com/zuowen/9766.html最初被设计用于编写自动化脚本(shell),随着版本的不断更新和语言新功能的添加,越多被用于独立的、大型项目的开发。
Cursor对象的其它主要方法
下表列出了Cursor对象的其它主要方法。
Cursor对象的属性
下表列出了Cursor对象的主要属性。
Exception类模块
Exception类模块包括了数据库访问过程可能出现的异常和错误信息,其异常和错误信息见下表。
在程序中如何使用DB-API接口?
Python为不同数据库管理系统提供了对应的DB-API接口,本课程以MySQL数据库为例,其它数据库系统可使用对应的DB-API接口。
安装MySQL数据库接口pymysql
pymysql是Python提供的,用于连接MySQL数据库的DB-API接口。在程序使用pymysql之前,需要先安装pymysql。
Windows 10操作系统安装pymysql,启动Windows命令行窗口,在窗口输入下面的命令:
pip install pymysql
ubuntu操作系统安装pymysql,启动命令行终端,在终端窗口输入下面的命令:
在程序中使用pymysql
# 导入pymysql# 使用try语句捕获数据库错误# 连接数据库conn = mysql.connect(host='localhost',user='root',password='123456',database='shop')print(conn)except Exception as e:# 连接失败,输出错误信息print(e)
数据库表的增删改查
查询数据库表记录
Cursor对象执行SQL查询语句后,会以结果集的方式返回,查询到的数据库所有记录都会存储在结果集中。
案例1:查询数据库表所有记录
查询shop数据库shoper表的所有记录。# 定义数据库连接函数def connect_database():password='~123456q',return connreturn "error"# 程序入口if __name__ == '__main__':conn = connect_database()if conn == "error":print("数据库连接错误")else:# 获取Curso对象# 使用 execute 方法执行SQL查询语句cursor.execute("SELECT * FROM shoper")# 获取所有结果集result = cursor.fetchall()# 遍历结果集的每行记录for row in result:print(row)# 关闭数据库连接finally:cursor.close()
代码解读
代码使用import语句导入pymysql库。
代码定义了函数connect_database(),该函数调用pymysql库的connect函数连接本地MySQL数据库,并返回创建的Connection对象。函数内部使用了try语句来捕获连接数据库时可能会发生的异常,如果异常被捕获,函数输出异常信息,并返回error。
主体代码调用connect_database()函数连接数据库并创建Connection对象,调用Connection对象的cursor方法获取Cursor对象,调用Cursor对象execute方法执行SQL查询语句,execute方法会返回SQL查询语句执行后的结果集,返回的数据类型是元组,遍历元组可以输出结果集中的每条记录。
添加数据库表记录
添加数据库表记录是指在数据库表中添加新的记录,添加记录操作是通过SQL的INSERT语句完成的,Cursor对象的execute方法执行SQL的INSERT语句。所有SQL语句执行完成后,调用Cursor对象的commit方法向数据库提交事务,如果事务发生异常,需要在except语句块内,调用Cursor对象的rollback方法进行事务回滚。
案例1:添加记录到数据库表
import traceback# 定义添加的记录shopers = ({"id": "0010","userId": "001","name": "华东旗舰店","brief": "数字产品","log": "","shopMoney":0,"createDate":"2020-05-12"},{"id": "0011","name": "华南旗舰店","brief": "家电产品","createDate":"2020-05-12"} \# 定义记录添加函数def add(conn,cursor):# 添加记录SQL语句sql = "INSERT INTO shoper(id,userId,name,brief,log,shopMoney,createDate)\VALUES ('%s','%s','%s','%s','%s',%d,'%s')"# 执行 sql 插入语句for shop in shopers:cursor.execute(sql % (shop["id"],shop["userId"],shop["name"],shop["brief"],shop["log"],shop["shopMoney"],shop["createDate"]))# 对提交到数据库的事务进行回滚traceback.print_exc()add(conn,cursor)# rowcount是Cursor对象的属性# rowcount记录了最近操作或影响的记录行数print("%d记录添加成功" % (cursor.rowcount))
代码导入了traceback模块,用于输出数据库发生异常时,输出详情的错误信息。
在添加数据库表记录之前,使用元组来存储需要添加的记录数据,元组的每一个元素为一条记录,每条记录采用字典存储,字典的key是数据库表的字段名称,字典的value是字段的值。
代码定义了add函数,add函数完成数据库表记录的添加。在add函数内部使用了try语句,用于捕获添加数据库表记录可能发生的异常,并输出异常信息,异常信息帮助定位发生的异常的原因。
在add函数内部,定义了SQL查询语句,并使用for循环将待添加的所有记录数据绑定到SQL语句中,调用Cursor的execute方法执行SQL语句。
SQL语句执行后,并没有提交到数据库,还需要调用Cursor的commit方法来提交数据库事务,数据库对提交的事务进行统一处理。
更新数据库表记录
数据库表记录的更新操作是指在数据库表中更新原有记录,更新操作是通过SQL的UPDATE语句完成的,Cursor对象execute方法执行SQL更新语句。
案例1:数据表记录的更新sql = "update shoper set brief = '%s' where id='0009'" % ("电脑、服务器")print("%d记录更新成功" % (cursor.rowcount))
修改数据库表记录需要使用SQL的UPDATE语句,调用Cursor对象的execute方法执行SQL语句,SQL语句执行后,并没有提交到数据库,只是形成了一个数据库事务,还需要再调用Cursor对象的commit方法提交事务,数据库系统执行提交的事务,数据表记录才更新完成。
删除数据库表记录
数据库表记录的删除操作是指在数据库表中删除符合条件的记录,删除操作是通过SQL的DELETE语句完成的。
案例1:删除符合条件的数据库表记录
sql = "delete from shoper where id='0010'"print("%d记录删除成功" % (cursor.rowcount))
删除数据库表记录需要使用SQL的DELETE语句,DELETE语句一般都要添加WHERE子句,进行条件删选,如果没有WHERE子句,将删除数据库表的所有记录。

版权声明
本文为[学习小博客]所创,转载请带上原文链接,感谢
https://my.oschina.net/u/4663607/blog/4716393

  1. 利用Python爬虫获取招聘网站职位信息
  2. Using Python crawler to obtain job information of recruitment website
  3. Several highly rated Python libraries arrow, jsonpath, psutil and tenacity are recommended
  4. Python装饰器
  5. Python实现LDAP认证
  6. Python decorator
  7. Implementing LDAP authentication with Python
  8. Vscode configures Python development environment!
  9. In Python, how dare you say you can't log module? ️
  10. 我收藏的有关Python的电子书和资料
  11. python 中 lambda的一些tips
  12. python中字典的一些tips
  13. python 用生成器生成斐波那契数列
  14. python脚本转pyc踩了个坑。。。
  15. My collection of e-books and materials about Python
  16. Some tips of lambda in Python
  17. Some tips of dictionary in Python
  18. Using Python generator to generate Fibonacci sequence
  19. The conversion of Python script to PyC stepped on a pit...
  20. Python游戏开发,pygame模块,Python实现扫雷小游戏
  21. Python game development, pyGame module, python implementation of minesweeping games
  22. Python实用工具,email模块,Python实现邮件远程控制自己电脑
  23. Python utility, email module, python realizes mail remote control of its own computer
  24. 毫无头绪的自学Python,你可能连门槛都摸不到!【最佳学习路线】
  25. Python读取二进制文件代码方法解析
  26. Python字典的实现原理
  27. Without a clue, you may not even touch the threshold【 Best learning route]
  28. Parsing method of Python reading binary file code
  29. Implementation principle of Python dictionary
  30. You must know the function of pandas to parse JSON data - JSON_ normalize()
  31. Python实用案例,私人定制,Python自动化生成爱豆专属2021日历
  32. Python practical case, private customization, python automatic generation of Adu exclusive 2021 calendar
  33. 《Python实例》震惊了,用Python这么简单实现了聊天系统的脏话,广告检测
  34. "Python instance" was shocked and realized the dirty words and advertisement detection of the chat system in Python
  35. Convolutional neural network processing sequence for Python deep learning
  36. Python data structure and algorithm (1) -- enum type enum
  37. 超全大厂算法岗百问百答(推荐系统/机器学习/深度学习/C++/Spark/python)
  38. 【Python进阶】你真的明白NumPy中的ndarray吗?
  39. All questions and answers for algorithm posts of super large factories (recommended system / machine learning / deep learning / C + + / spark / Python)
  40. [advanced Python] do you really understand ndarray in numpy?
  41. 【Python进阶】Python进阶专栏栏主自述:不忘初心,砥砺前行
  42. [advanced Python] Python advanced column main readme: never forget the original intention and forge ahead
  43. python垃圾回收和缓存管理
  44. java调用Python程序
  45. java调用Python程序
  46. Python常用函数有哪些?Python基础入门课程
  47. Python garbage collection and cache management
  48. Java calling Python program
  49. Java calling Python program
  50. What functions are commonly used in Python? Introduction to Python Basics
  51. Python basic knowledge
  52. Anaconda5.2 安装 Python 库(MySQLdb)的方法
  53. Python实现对脑电数据情绪分析
  54. Anaconda 5.2 method of installing Python Library (mysqldb)
  55. Python implements emotion analysis of EEG data
  56. Master some advanced usage of Python in 30 seconds, which makes others envy it
  57. python爬取百度图片并对图片做一系列处理
  58. Python crawls Baidu pictures and does a series of processing on them
  59. python链接mysql数据库
  60. Python link MySQL database