Python相关问题汇总

1.pycharm中windows找不到chrome解决办法

打开pycharm–》File–》setting–》Tools–》Web Browsers 。然后添加chrome安装路径
图1.png

2.inconsistent use of tabs and spaces in indentation

这个报错就是混用了tab和4个空格造成的,检查代码,要不全部用tab,要不全部用4个空格,或者用idle编辑器校正

3.python中出现IndentationError:unindent does not match any outer indentation level错误

当前用的文本编辑器Notepad++,有个设置,可以显示所有的字符的。
在: 视图 –> 显示符号 –> 显示空格与制表符

这样就可以看到我们Python代码的到底有没有该缩进的都缩进了。


image.png

4.# module 'pip' has no attribute 'main'

链接
找到安装目录下 helpers/packaging_tool.py文件,找到如下代码:

image.png

修改:

def do_install(pkgs):
    try:
        try:
            from pip._internal import main
        except Exception as e:
            from pip import main
    except ImportError as e:
        error_no_pip()
    return main(['install'] + pkgs)


def do_uninstall(pkgs):
    try:
        #import pip
        try:
            from pip._internal import main
        except Exception:
            from pip import main
    except ImportError:
        error_no_pip()
    return main(['uninstall', '-y'] + pkgs)

复制即可,自己打可能出现第2,3点问题

5.View function mapping is overwriting an existing endpoint function

定义了多个同名的视图函数,只需要改成不同的函数名即可。

6.Requirement already up-to-date: pip in d:\python_project\pyflaskdemovir\lib\site-packages (18.1)

pip更新及Requirement already up-to-date解决方法

7.Warning: (1366, "Incorrect string value: '\xD6\xD0\xB9\xFA\xB1\xEA...' for column 'VARIABLE_VALUE' at row 480")

暂时不影响功能

7.mysqlclient-1.3.13-cp34-cp34m-win_amd64.whl is not a supported wheel on this platform

原因是,下载的版本跟你的python版本不一致,如果你的pyhton 是64位3.7几,就需要对应下载cp37-amd64
下载地址
复制到你的虚拟环境下的D:\Python_project\Flask_shiyanlouenv\Scripts目录下,用pip install 下载的文件名来解压
eg:

image.png

8.Mysql忘记密码

参考链接
我的操作步骤是,
1.检查mysql的环境变量配置是否完全,不能在dos下使用mysql的话,查看安装路径并设置成环境变量。我是是

C:\Program Files\MySQL\MySQL Server 5.7\bin

你可以在mysql控制台,show variables like "%char%";查看
参考
2.停止mysql的服务 net stop mysql,如果停止失败或者开启失败,可到任务管理器中去停止mysql服务
3.开启一个cmd,执行mysqld -nt --skip-grant-tables
4.在开启一个cmd,执行mysql -u root -p如果此时提示mysql不是内部命令,说明你的环境变量没安装好.参考
5.进行第4步后,让输入密码,直接按enter进入
6.修改密码,依次执行

第一步:  use mysql
第二步: update user set password=password("new_pass") where user="root";// 'new_pass' 这里改为你要设置的密码
第三步: flush privileges;
第四步:exit

最后重新打开mysql,输入刚才设置的密码就ok 了
其他资料参考默认密码

8.UnicodeEncodeError: 'latin-1' codec can't encode characters in position 6-7: ordinal not in range(256)

image.png

9.Cannot add or update a child row: a foreign key constraint fails

删除表,重新创建

10.解决IntelliJ IDEA中git出现的 Could not read from remote repository问题

在Settings->Version Control->Git中,将SSH executable设置为Native即可,如图,红色方框中是要修改的地方。
链接

11.PermissionError: [Errno 13] Permission denied: 'D:\Python_project\Shiyanlou\file\courses.xlsx'

使用openpyxl进行文件保存时提示,原因是没关闭文件。所有关闭你打开的文件就能正常保存啦

12.#flask from app import db ImportError: cannot import name ‘db’ 的解决方案

在app的init下,注册了蓝图并且初始化数据库的,在其他地方导入db,显示导入错误。
app下的__init__.py中,db = SQLAlchemy() 位于blueprint之前
参考资料

13.Scrapy运行ImportError: No module named win32api错误

有些说下载对有https://github.com/mhammond/pywin32/releases,py32的版本,我的是下载了也不行,直接安装了

pip install pypiwin32

14.SyntaxError: unexpected EOF while parsing

一般是最后一行括号没补全,或者写了for循环没写循环体,因为解释器到底了度没找到它要找到的东西

15.scrapy出现:AttributeError: 'list' object has no attribute 'xpath'

for article in response.xpath('//div[@class="j-r-list"]/ul/li').extract()
应该去掉extract()

16.Pychorm注册码

参考资料,使用第三步破解补丁激活,完美只需三步

17.在使用flask时,发现修改了路由,原来的还是能用,修改的找不到url,新增的路由也是

后面发现的原因可能是,运行了其他的项目,导致了端口的冲突,即使F5+ctrl强制清除缓存也不行。我重新关机,启动,这下子就能行了。以后还是一个项目保持不同端口

18.Pycharm2018设置debug模式与host,port的坑

Additinal options栏 中:手动写入 --host=127.0.0.2 --port=1234

19.

image.png

20.flask-mail提示AssertionError: No recipients have been added

原因,发送消息用send(message).使用send_message(message)就报错了

20.Mysql显示乱码

在my.ini中设置了utf8,中文任然显示乱码,在mysql执行查询前,cmd默认编码是GBK,而mysql默认使用的是utf-8 所以你可以设置cmd为gbk;,设置 set charset gbk;在进行查询就能正常显示了。
mysql命令窗口显示乱码怎么解决?

image.png

21.selenium.common.exceptions.WebDriverException: Message: unknown error: Element <a class="btn btn-default" onclick="SEARCH.page_jump(100,1)" href="javascript:;">...</a> is not clickable at point (884, 436). Other element would receive the click: <i class="tab-ico"></i>

使用selenium分页时,提示,点击事件被别的接收了

22.selenium.common.exceptions.WebDriverException: Message: 'phantomjs' executable needs to be in PATH.

在创建的时候,定义browser=webdriver.PhantomJS(executable_path=r'D:\phantomjs-2.1.1-windows\bin\phantomjs.exe')

23.UserWarning: Selenium support for PhantomJS has been deprecated, please use headless versions of Chrome or Firefox instead(warnings.warn('Selenium support for PhantomJS has been deprecated, please use headless '

Selenium 已经弃用 PhantomJS ,请使用火狐或者谷歌无界面浏览器。
查找之后得到答案时selenium的版本问题,使用pip show selenium显示默认安装的是3.8.1版本
卸载之后重新pip install selenium==2.48.0安装成功

24.Command "python setup.py egg_info" failed with error code 10 in C:\Users\ADMINI~1\AppData\Local\Temp\pip-install-fhgsebqh\pycurl\

win10下安装pyspider出错,到地址下载对应的版本。复制到虚拟环境下的scripts中,进行pip install 安装。参考:参考文件

image.png

在进行安装pyspider就ok了

25.Target database is not up to date

出现这个原因是数据库中的版本和 生成的版本不一致
我在偶然子删除了versions,的所有.py文件,执行migrate的时候,提示找不到05d75fbd0C2,py。说明最近的数据迁移用的是05d75fbd0C2.py的文件,日期是2018-11-15 1:14:59,我发现另外的e1818953642c.py的日期是11-15-21:21,时间是更晚的,根据该文的提示,删除了 项目中删除和数据库中相同版本后面日期的版本的 .py 文件,即e1818953642c.py.然后在执行

image.png

26.Can't locate revision identified by '57c816829403'

发现在两台电脑来回切换的话,容易出现25的问题,比如在公司一台,回家一台,在某一台更新了数据库,在另外一台还是以前的版本,所以运行迁移的时候,就会报25,或者26的错误。现在是,直接删除

image.png
红框中的数据库,并且,在删除
image.png

重新 python manage.py db init
python manage.py db migrate
python manage.py db upgrade这样子数据不会丢失.

27. pychorm使用vue,提示# Uncaught ReferenceError: Vue is not defined 当出现这个问题的原因及处理

把vue.js放在顶部参考

28.No application found. Either work inside a view function or push an application context.

参考资料

from  simpledu.app import create_app
app=create_app("development")
app.app_context().push()

29.Python提示object is not subscriptable的错误

subscriptable的意思是 可有下标的 意思
错误的原因就是把不具有下标操作的对象用成了对象[i],比如int对象变量[i]就会报错。仔细检查错误行。

30TypeError: get() takes no keyword arguments

字典get方法,get("a",default="b")报错,不写default,直接写get("a","b")

30,semantic ui 图标不能正常加载

参考
复制 解压包中的fonts以及images到项目的static下,修改成 .. /fonts.参考资料中的就行

31.django在关闭debug后,静态文件无法加载的解决办法

32.django.db.migrations.exceptions.MigrationSchemaMissing: Unable to create the django_migrations table ((1064, "You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '(6) NOT NULL)' at line 1"))

mysql不支持5.5了
Ubuntu安装MySQL及遇到的问题解决方案

unbuntu下mysql升级,问题相关

参考资料
Can 't connect to local MySQL server through socket '/tmp/mysql.sock '(2)
mysql升级相关

34,Django jwt 自定义登录错误

参考资料
1.安装该文档对照修改,
https://github.com/GetBlimp/django-rest-framework-jwt/pull/317/commits/c3a4c3fc5180473a92a94af07613463b2bc2b325?diff=split
修改好之后就能提供该功能
settings.py中设置

JWT_AUTH = {
    'JWT_EXPIRATION_DELTA': datetime.timedelta(days=7),
    'JWT_AUTH_HEADER_PREFIX': 'JWT',
    'JWT_RESPONSE_PAYLOAD_HANDLER': 'app_news.api.jwt_response_payload_handler',
    'JWT_RESPONSE_PAYLOAD_ERROR_HANDLER': 'app_news.api.jwt_response_payload_error_handler',

}

注意:app_news.api这个根据你的路径修改。
api.py中设置方法,方法里自己设置想要的结构把

def jwt_response_payload_handler(token, user=None, request=None):
      return {
        ‘token’: token,
        ‘user’: UserSerializer(user, context={‘request’: request}).data
    }


def jwt_response_payload_error_handler(serializer, request=None):
    return {
        'status': 200,
        'message': "用户名或者密码错误",
        'data': None
    }

35.Django django.core.exceptions.AppRegistryNotReady: Apps aren't loaded yet

原因是我想写了个脚本,运行脚本提示了这个。解决办法
第一步,在urls,中设置

import os,django
os.environ.setdefault("DJANGO_SETTINGS_MODULE", "xxxx.settings")
django.setup() 

第二步脚本中设置

要使用model,需要提前导入urls
import AI_News.urls
from app_news.models import NewsTag

36 导入项目执行 run manage.py task 报错找不到xx.settings

注意你导入的项目的,django项目目录位置,一定根项目导入

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 203,547评论 6 477
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 85,399评论 2 381
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 150,428评论 0 337
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,599评论 1 274
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,612评论 5 365
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,577评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,941评论 3 395
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,603评论 0 258
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,852评论 1 297
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,605评论 2 321
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,693评论 1 329
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,375评论 4 318
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,955评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,936评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,172评论 1 259
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 43,970评论 2 349
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,414评论 2 342

推荐阅读更多精彩内容

  • 一、Python简介和环境搭建以及pip的安装 4课时实验课主要内容 【Python简介】: Python 是一个...
    _小老虎_阅读 5,718评论 0 10
  • Python 面向对象Python从设计之初就已经是一门面向对象的语言,正因为如此,在Python中创建一个类和对...
    顺毛阅读 4,207评论 4 16
  • 关于Mongodb的全面总结 MongoDB的内部构造《MongoDB The Definitive Guide》...
    中v中阅读 31,894评论 2 89
  • Web UI测试自动化 splinter - web UI测试工具,基于selnium封装。 selenium -...
    Thea0216阅读 5,793评论 2 48
  • 早就听说日本好,日本人有礼貌,日本的风景好,我却因为历史上的偏见偷偷在心里贬低着这个小而美丽的国度。而来到了...
    英子_0e7d阅读 1,351评论 0 0