python开发中容易犯的错误整合】的更多相关文章

写在前面 长期更新的博文.多数是一些比较隐蔽的问题.欢迎留言补充. pip并不是那么安逸 pip安装对于开发者来说确实是一种解放.可以自动安装依赖包,但执行最简单的pip安装命令时,并不是所有的依赖都会安装.有一些是模块可选择的,比如gunicorn在选择异步框架时.有一些因为调用的层次较多,忽视了,最后pip还是会提醒缺少一些依赖.留心每次安装的结尾. import时名称相同/相似(但实际模块不同) 近几年出现了较多次针对python供应链的黑客攻击之后,python官方对模块进行了规范,其中…
javascript中易犯的错误有哪些 一.总结 一句话总结: 比如循环中函数的使用 函数中this的指向谁(函数中this的使用) 变量的作用域 1.this.timer = setTimeout(function(){ this.clearBoard(); }, 0);这句话错在哪? This指代的是什么?它和日常英语口语中的this是一个意思吗? 随着近些年js编程不断地复杂化,功能多样化,对于一个程序结构的内部指引.引用也逐渐变多起来 下面让我们一起来看这一段代码: Game.proto…
不管是在学习还是工作过程中,人都会犯错.虽然Python的语法简单.灵活,但也一样存在一些不小的坑,一不小心,初学者和资深Python程序员都有可能会栽跟头.本文是Toptal网站的程序员梳理的10大常见错误,非常有参考意义.大家在开发过程中需要格外注意.译文中如有理解错误的地方,可以在网站留言. 常见错误1:错误地将表达式作为函数的默认参数 在Python中,我们可以为函数的某个参数设置默认值,使该参数成为可选参数.虽然这是一个很好的语言特性,但是当默认值是可变类型时,也会导致一些令人困惑的情…
新手程序猿,在开发中难免会犯各种各样的错误,以下是整理的一些android开发中常见的错误,一起来看看吧. 1.避免将多个类放在一个文件夹里面,除非是一次性使用的内部类. 就是一个文件,最好给分它同名的主类. 2.一个方法的代码长度最好不要超过35行 就是我们这个方法,别把它写的太长, 像是翻了几行的方法,要么拆分成几个方法,把里面很多公用的方法拿出来放在另外一个函数里,要不重构. 3.原则上,尽量不要手工的修改机器产生的代码 比方说,android项目中的R.java类 还有自动生成的类,也不…
一个易犯的错误,关于 Python 的传值(对于不可变量) 和 传引用(对于可变量),浅拷贝和深拷贝.废话不多说,看例子, 直接改变可变字典值,失败, >>> dic = dict.fromkeys(range(5), []) >>> dic {0: [], 1: [], 2: [], 3: [], 4: []} >>> dic[0] [] >>> dic[0].append(123) >>> dic {0: [12…
1.关闭eslint校验有了eslint的校验,可以来规范开发人员的代码,是挺好的.但是有些像缩进.空格.空白行之类的规范,在开发过程中一直报错,未免太过于苛刻了.所以,我还是会选择关闭eslint校验.  下面就介绍一下vue项目中如何关闭这个校验. 首先我们在创建一个vue项目的时候,会有一个选择:Use ESLint to lint your code? (Y/n),在这一步,我们选择no就好了. 但是如果我们不小心选择了Y,在开发过程中一直报错,该怎么办呢?我们不需要删除项目重新创建,我…
简介 AngularJS是目前最为活跃的Javascript框架之一,AngularJS的目标之一是简化开发过程,这使得AngularJS非常善于构建小型app原型,但AngularJS对于全功能的客户端应用程序同样强大,它结合了开发简便,特性广泛和出众的性能,使其被广泛使用.然而,大量使用也会产生诸多误区.以下这份列表摘取了常见的一些AngularJS的错误用法,尤其是在app开发过程中. 1. MVC目录结构 AngularJS,直白地说,就是一个MVC框架.它的模型并没有像backbone…
1:触发条件:创建的实体类生成到数据库表时报错 报错信息:TypeError: __init__() missing 1 required positional argument: 'on_delete' from django.db import models # Create your models here. class Classes(models.Model): # 班级表 title=models.CharField(max_length=32) # 班级-教师:多对多 m=mode…
其实IT是一个很严谨的行业,不管是从代码角度还是从日常的工作分配都是按计划来的. 从今年年初到现在,在我的工作中出现了两次“Delay”,第一次不以为然,虽然上司也找过我谈话,但没意识到问题的严重性. 第二次我又犯了,这次我皱紧了眉头,进行了一次深入反省,杜绝错误不再发生. 一丶为什么会出现Delay 1.任务真的很多 2.时间很宽裕,工作上的懒惰导致了Delay 3.不可预知性的事情很多,比如今天同事找我帮忙,今天开会,又或者遇到了技术难题,导致了规定时间内的任务没有完成等等 二丶怎么杜绝De…
以下是15个最受欢迎的Python开源框架.这些框架包括事件I/O,OLAP,Web开发,高性能网络通信,测试,爬虫等. Django: Python Web应用开发框架 Django 应该是最出名的Python框架,GAE甚至Erlang都有框架受它影响.Django是走大而全的方向,它最出名的是其全自动化的管理后台:只需要使用起ORM,做简单的对象定义,它就能自动生成数据库结构.以及全功能的管理后台. Diesel:基于Greenlet的事件I/O框架 Diesel提供一个整洁的API来编写…
(1)可变参数类型作为函数参数默认值,函数参数默认值的设置在Python中只会被执行一次,也就是定义该函数的时候. 解决办法,设置为None,然后判断 (2)Python中的变量名解析遵循所谓的LEGB原则,也就是“L:本地作用域:E:上一层结构中def或lambda的本地作用域:G:全局作用域:B:内置作用域”(Local,Enclosing,Global,Builtin),按顺序查找. 上述错误的出现,是因为当你在某个作用域内为变量赋值时,该变量被Python解释器自动视作该作用域的本地变量…
刚开始使用Code::Blocks开发Windows中文应用程序的朋友们,如果在代码中使用了中文字符串,编译时可能遇到过Illegal byte sequence或Failure to convert GBK to UTF-8这样的错误提示.这类错误的原因在于源代码文件编码和编译器编码设置不一致造成的. Code::Blocks 编辑器保存源文件用的编码. 默认情况下,是保存为windows本地编码的,也就是WINDOWS-936字符集,也就是GBK编码.但是GCC编译器默认编译的时候是按照UT…
7.1写错了 siblings()这个函数写成了sibling,在jQuery中并没有这个函数的定义 在查找错误的过程中,自己也发现了一个学习jQuery的网站http://www.365mini.com/:这里讲的东西都很简单.并不需要动脑子 毕竟脑子的容量有限 程序员 不需要动脑子 关于学习python…
1 安装python编译器2.7.11版本 (安装包自带pip,setuptools,依赖,会将pip,setuptools安装到自己的类库中) 配置环境变量: 配置python_home,然后加入path中,为了能在cmd中使用python命令 配置%python_home%/Scripts为了能用pip命令 2 安装pycharm代码编辑器 网上有注册码,注册使用 3 安装程序需要的安装包 pip安装 pip最大的好处就是能帮助你下载包,以及依赖包 因为pip默认源链接不上,所以修改为了国内…
调用Set.addAll()方法时抛UnsupportedOperationException异常 上面的Set是Map中keySet的返回结果. 程序中这样两句代码运行时,抛UnsupportedOperationException异常. 最初感觉很奇怪,Map.keySet()方法返回一个Set呀,Set明明是支持add().addAll()方法的,怎么会抛“不支持操作”异常呢. 结果发现,问题不是出在Set上,而是出在Map的keySet()方法上. 下面是摘自API帮助文档的说明 Map…
我们可能一开始就接触一个项目的开发,刚开始时都是信心满满,一定把这个项目做得非常完美,但是时间那么少,任务那么多,我们就只有将就了. 首先,一般情况下,我们会加一个调试标志,define('APP_DEBUG', true); 用以一些方便的地方进行特殊操作,也会将error_reporting打开,一般会很烦,通常会这么做,error_reporting(E_ALL & ~(E_STRICT | E_NOTICE));这样就会避免很多不必要的麻烦,提升开发速度同时,又能尽快发现问题,然后上线之…
easy_install是一个python的扩展包,主要是用来简化python安装第三方安装包,在安装了easy_install之后,安装python第三方安装包就只需要在命令行中输入:easy_install packagename,然后程序会自动搜索相应版本的安装包并配置各种文件,免去了手工下载安装的复杂度. Windows中安装方法/步骤 1.首先要先用百度搜索easy_install,找到下载页面 2.在页面中,找到ez_setup.py这个链接 3.下载这个文件到本地,在命令行中运行e…
Pycharm是开发Python程序的利器,但有时会遇到无法输入中文的情况.表现为:在Ubuntu系统可以正常输入中文,却在Pycharm内写注释的时候,切换不出中文.下面演示如何解决此问题. 1.在pycharm安装目录bin下的pycharm.sh中,添加如下几行: ibus类型的输入法: export GTK_IM_MODULE=ibus export QT_IM_MODULE=ibus export XMODIFIERS=@im=ibus fcitx类型的输入法: export GTK_…
ur"D:\work\结构化\CSV\useful\内容.csv" 报错 编码错误原因,当路径中有\u这种字串时,即使是包含在r"" 中也会进行转义,然后转义出错.…
经常回顾同事写的代码,发现一些问题,总结分析,用于员工培训,或系统优化方面的内容教学. 文中有问题的的代码我用黑体字标识. 1 界面与逻辑代码混淆 这是目前发现的比较严重的问题.框架花费了很大的力气,运用数据绑定,就是为了让界面(控件操作)与后台逻辑(验证与传值)执行相对严格的分离.这里我只能说相对严格的分离,因为后台中一些操作不可避免的需要在前台提示用户确认,或是提示用户输入一些变量值,这部分逻辑也可能会参与在前台界面中.我举例如下. private void grid_AfterCellUp…
错误信息 : System.NotSupportedException: Unable to find the default constructor on type App5.MyFragment.  Please provide the missing constructor. 错误图片: 解决方法:干脆不让他旋转屏幕,当下QQ.微信等app都没有旋转等功能,且旋转后重新绘制界面影响用户使用. this.RequestedOrientation = Android.Content.PM.Sc…
1.引用jQuery库文件的<script>标签,必须放在引用自定义脚本文件的<script>标签之前,否则,就会发生找不到对象:最好在<head>元素中,把引入样式表的<link />放在<script>标签前面:有时候其他的javascript库也会用$符号,为了不冲突,可以使用.noConflict()方法把控制权交给别的库.    <script src="prototype.js" type="tex…
1:Undefined symbols for architecture arm64: ? 1 2 3 <code>Undefined symbols for architecture arm64:   "_OBJC_CLASS_$_FBSession", referenced from: someFile ld: symbol(s) not found for architecture arm64</code> 解决: project -> target…
1.duplicate symbols for architecture armv7   1.首先排查是否有名字重复的文件:   2.检查是否在#import头文件的时候,不小心把.h写成了.m. 2.reason: '-[__NSCFArray bytes]: unrecognized selector sent to instance 0x1805789n' 应该是请求的方法里就已经有转过一次解析,responseObj 已经是NSArray(NSDictionary)了,是就不需要再去解析…
请看下面代码 class User: def __init__(self, name, hobby=[]): self.name = name self.hobby = hobby def add_hobby(self, hobby): self.hobby.append(hobby) def remove_hobby(self, hobby): self.hobby.remove(hobby) def __str__(self): return self.name + ',' + '-'.jo…
在python开发中,我们常常需要执行命令,修改相关信息.那对于初学者来说,python中如何执行命令呢?今天,小编就为大家分享3种python命令执行的方法. 1. 使用os.system("cmd") 在python中,使用os.system("cmd")的最大特点是,其执行时程序会打出cmd在linux上执行的信息. import os os.system("ls") 2. 使用Popen模块产生新的process Popen是现在pyth…
在python开发中,我们经常需要安装一些python的第三方类库,包等等,用PyCharm就会安装就会超级方便 1.打开上面的小扳手 2.点击页面左边的Project Interpreter 3.点击左边的加号按钮 4.填写需要导入的库名 5.点击Install进行安装 比较常见的错误就是安装不了的情况下,看看你的pip 版本,10.0没有main(),考虑降个版本,打开cmd:python -m pip install --upgrade pip==9.0.3…
1.Python开发中会用到的工具下载地址 FireBug插件安装地址:https://addons.mozilla.org/en-US/firefox/addon/firebug/ FirePath插件安装地址:https://addons.mozilla.org/en-US/firefox/addon/firepath/ 2.Python安装配置(可忽略) Python 是一门有条理的和强大的面向对象的程序设计语言 官网下载地址:https://www.python.org/download…
在 Windows 上怎样做 Python 开发?是像大神那样使用纯文本编辑器,还是用更加完善的 IDE?到底是用自带的命令行工具,还是需要装新的 Terminal?本文将带你了解如何利用微软官方维护的 MS Terminal 与 VS Code,来为 Python 开发保驾护航.本文选自机器之心 作者Jon Fincher,如有侵权,则可删除. 使用 Windows 系统一大好处是它的应用太丰富了,甚至强大的 GPU 也能在闲暇时间做点其它「工作」.然而与 Linux 或 macOS 不同,在…
上文提到了python开发中非常重要的两处设置. 一个是编解码器的默认设置defaultencoding >>> import sys >>> sys.getdefaultencoding()'ascii' 另一个是声明在python文件头部的代码编码方式coding # -*- coding: utf-8 -*- 这两处设置在python的str,unicode对象的encode和decode方法中,有非常重要的作用,直接影响到结果.下面的代码按照目前的设置进行,即d…