PYTHON语言学习
通过两个星期的自学python语言,初步了解到python的知识构架。它比C语言和C++语言在某种程度上来说要简单些,但是也有很多我不懂的东西。陈老师给我安排的课堂任务是第21章的Database Programming,通过python与数据库的连接来了解python语言.
看到老师发给我的那一章知识,全都是英文版的,而且涉及到很多不了解的计算机专业术语,让我很是束手无策。,真不知道该怎么办。在好不容易看懂英文后,发现很多知识都不理解,无从下手。只好在网上查阅关于PYTHON的知识。在初步了解python语言后,很是头疼。
在GUI里运行指导书中的代码后,发现编译器总是会出现语法错误。起初以为是代码有错误,在网上查阅相关资料后,不是代码错误,是
格式
pdf格式笔记格式下载页码格式下载公文格式下载简报格式下载
不正确,也就是所谓的不合法的缩进。在一步步小心的对好格式后,再次运行时,又出现缺少模块的错误。于是我又开始在相关网址上下载对应的模块,在导入模块后又出现error,我很疑惑,模块已经导入后,为何还出现模块缺少的错误。经过同学的提醒,才知道自己没有设置环境变量,导致模块没有真正的导入进去。设置环境变量如下:
右击我的电脑,选择属性,点击高级,再次点击环境变量,点击新建,输入python安装的存放路径。此时系统内部认定了python.设置好系统变量后,再导入模块。其步骤如下:
点击开始,点击运行,输入cmd,然后在命令提示符里输入 cd d/ 下载的模块的存放路径,再enter,然后再输入python setup.py installl,此时窗口在提示正在running的过程。有时候用这个方法导入模块也会出现问
题
快递公司问题件快递公司问题件货款处理关于圆的周长面积重点题型关于解方程组的题及答案关于南海问题
,通过网上查找,知道模块导入没成功的原因是没有安装setuptools这个工具。只好先安装这个工具。通过一步步的找错排错纠错,终于成功的导入了模块。再次运行代码时,发现解释器又出现新的错误提示,说can’t import name NAMES, 这一句是from ushuffle_db import NAMES, randName,我尝试把这句改为: Try:
from ushuffle_db import NAMES, randName except importerror
改过后这句语句没有了错误。当再次运行代码后,又出现了一个新的错误,说函数没有定义,在重新仔细
分析
定性数据统计分析pdf销售业绩分析模板建筑结构震害分析销售进度分析表京东商城竞争战略分析
代码后,发现并不是没有定义,而是代码的格式缩进不正确。于是改过格式后,再次运行代码,终于成功开始运行了,但是当运行到一半的时候出现了操作错误,是无法连接到sql server,是自己的电脑没有安装这个数据库,所以代码运行中止了。只要电脑安装好了sql server后就可以彻底成功运行了。
编程这个真是考验人的耐心和极限。我的每一个代码都有将近200行,让人看得头皮发麻。想过很多方法去解决运行中的错误。在学习python这段期间,虽然学习的过程很艰难,遇到了不少的问题,但是学到了很多关于python的知识,通过实践,能更加体会到这门语言的精髓,比在书上单纯看生硬的东西,更加理解和更容易吸收。
下面是这一章的exercises答案:
21-1 Answer: DB-API 是提供到 DBMS 的接口的 Python 模块
标准
excel标准偏差excel标准偏差函数exl标准差函数国标检验抽样标准表免费下载红头文件格式标准下载
。这个标准确保了
Python 程序可以使用相似语法连接到任何受支持的 DBMS(诸如 MySQL、PostgreSQL、
Oracle、Sybase 或 DB2),以及从这些 DBMS 上访问数据。尽管也存在一个允许访问各种
存储机制的 ODBC 模块,但通常会调整每个模块以适合它为之提供接口的特定 DBMS。
它是一种开发MYSQL脚本语言
21-2 Answer: paramstyle module has five parameter styles.Differences are descirbed below numeric Numeric positional style
named Named style
pyformat Python dictionary printf() format conversion qmark Question mark style
21-3 Answer:cursor execute*() methods have two objects: execute(op[, args]) and
executemany(op, args).
The diffrences are below :
execute(op[, args]) can execute a database query or command.
executemany(op, args) is a method combined by execute() and map(),it can prepare and
execute a database query or command over given arguments
21-4 Answer:the cursor fetch*() methods have three methods: fetchone(),fetchmany
([ size=cursor.arraysize]) and fetchall().
The differences are below:
fetchone() can fetch next row of query result
fetchmany ([ size=cursor.arraysize]) can fetch next size rows of query result
fetchall() can fetch all (remaining) rows of a query
21-5 Answer:Yes,it is.
insert() is available for that module that are extras not required by the API.
21-6 Answer:#wuli.py_
Import mysqldb
Conn=mysqldb.connect(host=”wuli1”,user=”wuli2”,passwd=”wuli3”,db=”test”)
cursor = conn.cursor ()
cursor.execute(“select version()”)
row=cursor.fetchone()
print”wuli nihao:”,row[0]
cursor.close()
conn.close()
21-7 Answer: create(cur):
try cur.execute(' ' '
create table wuli(
name char(10),
id int) ' ' ')
names=(('lyli','1001'),('luxi','1002'),('jessica','1003'),)
21-8利用现有的数据库的
表
关于同志近三年现实表现材料材料类招标技术评分表图表与交易pdf视力表打印pdf用图表说话 pdf
,读出数据库表的内容,其代码如下:
import MySQLdb
def test(self):
conn = self.connect()
sql="select * from bbs where id<20"
curs = conn.cursor()
curs.execute(sql)
rows=curs.fetchall()
for i in range(len(rows)):
print "Row",i,"name",rows[i][3],"value",rows[i][4]
conn.close()
21-10 代码如下:
from functools import partial
import Tkinter
root=Tkinker.Tk()
Mysql=partial(Tkinter.Button,root,fg='white',bg='blue')b1=Mysql(text='Button1')
b2=Mysql(text='Button2')
qb=Mysql(text='QUIT',bg='red',command=root.quit)
b1.pack()
b2.pack()
ab.pack(fill=Tkinter.X,expand=True)
root.title('PFAs!')
root.mainloop()