您当前的位置: 首页 >  Python

dawn

暂无认证

  • 8浏览

    0关注

    204博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文

学习Python⑷:Python开发过程中遇到的问题及解决办法

dawn 发布时间:2021-01-15 11:31:55 ,浏览量:8

1、访问MS SQL Server 2000数据库时,返回的结果是乱码?   这个实在是坑人啊!   最开始学Python是上周,2020年1月7日,看到一个访问数据库的例子,想学一下Python,安装好环境,调试了一下数据就出来了,原来Python这么简单啊?!入门太容易了,难怪那么多人喜欢!   晚上想写一个完整的访问数据库的程序,结果发现显示汉字是乱码,这个是编码问题,得到数据库的编码和Python使用的编码,再设置一下应该问题不大,结果还是不行,到网上搜啊搜,最后有了一个解决办法,就像这样:   Item[1].encode('latin1').decode('gbk')   所返回的字段数据如果是字符,加上.encode('latin1').decode('gbk')就可以了。   汉字终于可以正常显示了。   以为这样就解决了。   结果程序还是报错,因为数字和日期的字段还是报错,那好吧,我做个类型判断type()就应该可以。可是返回结果为none的时候没有类型。   那在数据库里放一个字段表,里面有数据类型,提取出来判断一下就应该可以了。   终于可以全部显示了,为了这个问题,整整折腾了5个小时。   保存数据又出问题了,记录修改后保存到数据库里还是乱码!   先人板板,这是哪样啊?谁TMD说Python是最好用的开发语言?!这里面有这么多的坑啊?!   在网上继续百度,看到用pyodbc可以,下载下来,一试验,全部OK了!   最好的解决办法:使用pyodbc,我在https://pypi.org/下载的是对应的版本,pyodbc-4.0.30-cp37-cp37m-win_amd64.whl,到对应的目录下,执行:   Pip install pyodbc-4.0.30-cp37-cp37m-win_amd64.whl

2、窗口大小不能改变   原想这应该很简单,就是设置一下窗口的高和宽,写一个窗口居中的函数:

  def SetWindowCenter(WinID):                        # 将指定的窗口居中
      ScreenWidth = WinID.winfo_screenwidth()        # 获取屏幕的宽度
      ScreenHeight = WinID.winfo_screenheight()      # 获取屏幕的高度
      WinWidth=WinID.winfo_width()                   # 获取窗口的宽度
      WinHeight=WinID.winfo_height()                 # 获取窗口的高度
      WinSize = '%dx%d+%d+%d' % (WinWidth,WinHeight , (ScreenWidth - WinWidth) / 2, (ScreenHeight - WinHeight) / 2)
      WinID.geometry(WinSize)

  要使窗口居中的时候,调用一下就好了。   可是怎么样都不行,窗口是可以居中,可大小不正常,很郁闷。   结果,使用一下update()函数竟然就好了。   原来,tk初始化时默认都是1,要想获取准确的位置和大小信息 必须调用update方法,刷新窗口才可以。   用惯了其他开发工具,这样的逻辑很坑人啊,谁会注意到这一点?!

3、不能正常安装插件

  由于我使用的是代理,安装插件的时候总是报错的多,即使在https://pypi.org/上找到对应文件,在本地安装也不行。   在写图形界面,要使用MDI窗体的时候tkinter就不行了,决定使用wxpython,可始终安装不上。   结果,使用一下update()函数竟然就好了。   上网查资料,找到解决办法:pip install wxpython -i http://pypi.douban.com/simple/ --trusted-host pypi.douban.com   原来pypi.douban.com是个镜像,这样安装就顺利多了。类似地,你也可以将wxpython换成你想要安装的插件名称来进行。

4、运行完成后总出现:libpng warning: iCCP: cHRM chunk does not match sRGB

  经过网络搜索,问题出现在QQ输入法,我直接卸掉就好了。

关注
打赏
1664252102
查看更多评论
立即登录/注册

微信扫码登录

0.0477s