![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
BUG记录
huizhang0110
厚积薄发
展开
-
Python使用'input'读取输入文本出现NameError错误
在Python2中内置函数input()会将输入数据当成指令,从键盘中输入数据应该使用raw_input() 在Python3中input()函数用于从键盘中读取数据 1 #!/usr/bin/python 2 # -*- coding: utf-8 -*- 3 4 # 使用 input 会出现NameError 5 message = input("Tell me somet原创 2017-09-24 02:27:15 · 7178 阅读 · 0 评论 -
多次进行dfs没有对辅助数据结构进行重新赋初始值
在图进行多次dfs的时候,在下次调用的时候辅助数据结构中的数据需要重新进行初始化,否则将会出现难以发现的Bug。如下代码中对创建的图进行了多次的dfs。 Equations are given in the format A / B = k, where A and B are variables represented as strings, and k is a real number (f原创 2017-09-16 14:35:24 · 307 阅读 · 0 评论 -
使用移位运算的时候,没有把最终的值重新赋值到原变量,导致死循环
如下代码所示,在使用移位运算的时候,粗心地忘记了赋值运算符。应使用 tmp >>= 1 而不是 tmp >> 1。否则的话tmp一直没有被更新,造成程序陷入到死循环中。#include <stdio.h>#include <stdlib.h>#include <assert.h>int * newIntRaw(int n){ return (int *)malloc(sizeof(in原创 2017-09-12 11:11:33 · 925 阅读 · 0 评论 -
算数运算符(+-*/)优先级>移位运算>位运算>逻辑运算
编程中注意运算符的优先级,如果不确定的话一定要使用括号,下面就是一个血例int * countBitsWithDP(int num, int *returnSize){ int i; int *res = newIntRaw(num + 1); assert(num >= 0); *returnSize = num + 1; res[0] = 0; f原创 2017-09-12 12:38:30 · 2620 阅读 · 0 评论 -
在递归终止条件前进行了一些操作,导致程序bug
通常递归终止条件放置在程序的开始,但是在C语言中变量声明和初始化必须放置在函数的开头。在不注意的情况下可能导致一些难以察觉的bug,如下:TreeNode * buildTree(char *preOrder, char *inorder, int begin, int end){ static int index = 0; int i; char c; // 这里不能直接原创 2017-09-13 00:07:34 · 679 阅读 · 0 评论 -
Python编码错误
SyntaxError: Non-ASCII character ‘\xe4’ in file ./ss.py on line 2, but no encoding declared; see http://python.org/dev/peps/pep-0263/ for detailspython解释器默认以ASCII编码读取源文件,但是在文件中使用了非ASCII字符(检测到\xe4),因此读取原创 2017-09-21 08:51:45 · 519 阅读 · 0 评论 -
使用pickle将对象存储到文件中时出现 TypeError: write() argument must be str, not bytes
pickle默认操作二进制文件,使用文件函数的时候需要注意,否则出现 TypeError如下,open函数参数更改为 wb 可以正常运行#!/usr/bin/python3# -*- coding: utf-8 -*-# 实现用户的历史记录功能# 使用容量为 n 的队列结构from collections import dequefrom random import randintimpor原创 2017-10-02 22:33:48 · 6314 阅读 · 0 评论 -
使用C++类模板,出现链接错误
在定义一个模板类的时候,将类模板成员函数放在独立的cpp实现文件中,将模板类声明放在一个h文件中。在一个文件中需要使用到这个类,直接include头文件发现出现链接错误。由于模板不是函数,只是一些C++编译器指令,说明了如何生成类和成员函数定义,无法单独编译成obj文件,因此不能将模板成员函数放在独立的实现文件中。模板必须与特定的模板实例化请求一起使用,最简单的方法是将所有的模板信息放在一个头文件中原创 2017-10-12 10:38:14 · 4426 阅读 · 0 评论 -
re.match匹配多行数据失败
出错代码与现象: 正则表达式提取网站源码中的_xsrf的值 使用单行数据测试正则表达式,能够正确提取,但是换成网页全文数据的时候,出现错误。import requeststry: import cookielibexcept: import http.cookiejar as cookielibimport resession = requests.session()h原创 2017-11-09 15:45:18 · 1813 阅读 · 0 评论