python 坑1】的更多相关文章

Python closures and late binding A closure occurs when a function has access to a local variable from an enclosing scope that has finished its execution. def make_printer(msg): def printer(): print msg return printer We can see that the printer() fun…
python的sort函数使用的时候有一个参数cmp.一定注意这里返回值要用1和-1.不能True和False!!!…
在之前的文章 http://www.cnblogs.com/bitpeng/p/4748148.html 中,大家看到了ret.append(path) 和ret.append(path[:])的巨大差别.这和Python的对象机制有关.现在谈谈这个问题! 我们知道,Python有可变对象和不可变对象,他们的表现行为也迥然不同.先来几个简单的问题: def foo1(arg): arg = 5 print(arg) x = 1 foo(x) # 输出5 print(x) # 输出1 def fo…
目录 1.编码解码 2.基础数据类型补充: 2.1 str: 2.2list: 2.3tuple: 2.4dict: 2.5set: 3.坑 4.类型转换: 5.数据类型: 1.编码解码 编码:将文字转换成字节形式 encode name = '小冯' print(name.encode('utf-8')) # b'\xe5\xb0\x8f\xe5\x86\xaf' 解码:将字节转换成文字形式 decode name = '小冯' msg = name.encode('utf-8') print…
最近要处理个简单数据,一个字段中为文本类型,包含各种描述.要求是包含平方米的数值提取出来,变成数值,如果包含多个,则把各个值累加起来. 比如 字段值为 “非法占用100平方米” 处理后结果为 100 字段值为 “工棚3间” 处理结果为0 字段值为 “工棚3间,瓦屋2间,非法占用100平方米” 处理结果100 字段值为 “工棚100平方米,瓦屋100平方米” 处理结果为200 由于一直写.net,上述功能在.net中做起来并不麻烦.但是觉得应该是字段计算器写写就解决的问题,懒得在用.net搭.就尝…
space = input("set user quotation:").strip() quotation = int(space* 1024 * 1024) print(quotation) input获取的式字符串而非数字,运行输入111,不报错也不打印,卡住!!!…
Bigger系列题解 Bigger Python 坑点在于要高精度以及表达式求值,用java写可以很容易避免高精度问题 然后这道题就可以AC了 代码 import java.io.*; import java.util.*; import java.math.*; import java.text.*; public class Main { static Map<String,BigInteger> map= new HashMap<String,BigInteger>(); s…
-----世界上本来没那么多坑,python更新到3以后坑就多了 无论哪一门语言开发,都离不了数据储存与解析,除了跨平台性极好的xml和json之外,python要提到的还有自身最常用pickle模块.在使用上,python的常用模块接口漂亮而简单,而且json跟pickle二者使用一模一样.首先来看一下用法,代码如下: import json,pickle #导入模块. data = { 'name' : "lixin", 'sex' :"female", 'he…
这些天应朋友的要求抓取某个论坛帖子的信息,网上搜索了一下开源的爬虫资料,看了许多对于开源爬虫的比较发现开源爬虫scrapy比较好用.但是以前一直用的java和php,对python不熟悉,于是花一天时间粗略了解了一遍python的基础知识.然后就开干了,没想到的配置一个运行环境就花了我一天时间.下面记录下安装和配置scrapy踩过的那些坑吧. 运行环境:CentOS 6.0 虚拟机 开始上来先得安装python运行环境.然而我运行了一下python命令,发现已经自带了,窃(大)喜(坑).于是go…
Bottle是一个小巧实用的python框架,整个框架只有一个几十K的文件,但却包含了路径映射.模板.简单的数据库访问等web框架组件,而且语法简单,部署方便,很受python开发者的青睐.Python初学者可以好好的了解一下这个框架,但是也不得不提醒大家这个框架在使用中必须注意的一些事项. unicode 作为非英文应用的开发者,unicode是一个绕不过去的坑. web.py 对此是不作处理的,全都按原编码方式处理. bottle 则作了一个有点奇怪的处理: request.query 或…
1. 不要使用可变对象作为函数默认值 代码如下: In [1]: def append_to_list(value, def_list=[]): ...: def_list.append(value) ...: return def_list ...: In [2]: my_list = append_to_list(1) In [3]: my_list Out[3]: [1] In [4]: my_other_list = append_to_list(2) In [5]: my_other_…
一.不要使用可变对象作为函数默认值 复制代码代码如下: In [1]: def append_to_list(value, def_list=[]):   ...:         def_list.append(value)   ...:         return def_list   ...: In [2]: my_list = append_to_list(1) In [3]: my_listOut[3]: [1] In [4]: my_other_list = append_to_l…
### python之 继续走函数的坑 上篇文章简单介绍了函数的一些简单的使用,这次继续踩函数的坑1.函数对象 函数其实也可以当做一个参数传给另一个函数,也可以使用赋值的方式来给另一个,而且这两个的内存地址都是一 样的 def f1(): print('这个是引用的函数测试') func = f1 print(f1) # 不加括号为foo函数的内存地址 这个其实很有用处,稍后解释 print(func) # func指向foo内存地址 func() # foo内存地址,加()执行 ####函数可…
实践出真知,学习 Python 第六天,准备开始尝试写一些 Python 的实例.之前学习过程主要是参照的 廖雪峰老师的教程.搭建环境的过程,被很多坑围绕着. 版本选择 版本选择 Python 3.5 iis7 与 Python 配置 IIS 使用 Python 配置 IIS 使用 Python 的相关操作 要注意的是,由于 Python 版本原因,上面博文中最后的检验代码会报错,Python 3.5 以上版本可以使用下面的代码 print ('Status: 200 OK') print ('…
error: command 'C:\\Users\\Admin\\AppData\\Local\\Programs\\Common\\Microsoft\\Visual C++ for Python\\9.0\\VC\\Bin\\cl.exe' failed with exit status 2 系统 windows 2003 python2.7 玩了个小项目,需要用到lxml, pip install lxml 常规安装,出现错误,要求c++ 9.0,还给了个下载地址,安装好再来,出现上面错…
最近两三个月的时间,断断续续边学边做完成了一个微信公众号页面的开发工作.这是一个快递系统,主要功能有用户管理.寄收件地址管理.用户下单,订单管理,订单查询及一些宣传页面等.本文主要细数下开发过程中遇到的各种坑,也算是另外一种总结吧. 1. 开发语言及框架 Python + Flask + Bootstrap,数据库使用的是MySQL   2. 相关文档及Lib库 1) Bootstrap官方文档 http://v3.bootcss.com/getting-started/ 2) 微信公众号开发文…
简介 有些 post 的请求参数是 json 格式的,这个前面发送post 请求里面提到过,需要导入 json模块处理.现在企业公司一般常见的接口因为json数据容易处理,所以绝大多数返回数据也是 json 格式的,我们在做判断时候,往往只需要提取其中 几个关键的参数就行,这时候我们就需要 json 来解析返回的数据了.首先来说一下笔者为何要单独写这么一篇,原因是:python 里面 bool 值是 True 和 False,json 里面 bool 值是 true和 false,并且区分大小写…
递归目录生成器方式, else 里的 tmp 显示获取 yield 不可缺少 , 递归算法中若要使用生成器,需要在生成器的原函数(首次调用)显式得到所有yield值 def get_file_recur(path): children = os.listdir(path) for child in children: qualified_child = os.path.join(path,child) if os.path.isfile(qualified_child): yield quali…
近日写代码又遇到两个 Python 的坑,觉得值得记录. 递归传参问题 Python 里传参的实现是 assignment,但由于 Python 里都是对象,除了几个基本类型,assignment 基本都是引用的赋值,因此在递归里,你传的参数很可能就被下一层修改掉,例如: def some_func(A): # do your routines some_func(A) 如果这个A是个 mutable 的对象,而你的函数里对A有修改,那每一层递归都是修改同一个对象A. 我是在写一个解数独的程序时…
原文地址:https://www.v2ex.com/amp/t/443384 Python 的赋值坑 , a=b=c=1??? 今天回答了一个主题, 一不小心进入了一个坑, 耗费了好多时间终于弄懂了我想要将 a,b,c 变量同时赋值 1, 我使用了```In [192]: a = b = c = 1 In [193]: a, b, cOut[193]: (1, 1, 1)```很明显我赋值成功了,a.b.c 都是 1但是这个下赋值顺序是怎么样的首先让我们先猜测一下:第一种方式:a,b,c 同时赋…
常见的java调用python脚本方式 1.通过Jython.jar提供的类库实现 2.通过Runtime.getRuntime()开启进程来执行脚本文件 1.Jython Jpython使用时,版本很重要!大多数坑来源于此.这句话不听的人还得走点弯路 运行环境:Python2.7 + Jython-standalone-2.7.0 <!--Maven依赖,jar包自行前往仓库下载--> <dependency> <groupId>org.python</grou…
这最近人工智能比较火,看了一下大多都是python的代码,最近看看python 的代码,一出来就遇到了坑,空格的问题先不说了直接上代码吧 # coding = utf-8 import urllib.request #import ssl #ssl._create_default_https_context = ssl._create_unverified_context response = urllib.request.urlopen('https://www.douban.com/') p…
Python 2.7 cython cythonize py 编译成 pyd 谈谈那些坑 前言 基于 python27 的 pyc 很容易被反编译,于是想到了pyd,加速运行,安全保护 必要准备 安装cython:pin install cython 下载安装:VCForPython27.msi Cython document:https://cython.readthedocs.io/en/stable/src/userguide/source_files_and_compilation.ht…
开始学python 交互MySQLdb,踩了很多坑 第一个 %d format: a number is required, not str 参照以下博客: https://blog.csdn.net/u011878172/article/details/72599120 # -*- coding: utf-8 -*- import MySQLdb try: conn=MySQLdb.connect(host='localhost',port='3306',db='test',user='roo…
import sqlite3 #导入模块 conn = sqlite3.connect('example.db') C=conn.cursor() #创建表 C.execute('''CREATE TABLE stocks(data text,trans text, symple text,qty real,price real)''') #插入一条数据 C.execute('''INSERT INTO stocks VALUES('2006-10-01,'BUY','RHA',100,35.1…
知乎上看到的Python练手项目推荐,链接见:https://www.zhihu.com/question/29372574,不知道是我自己懒得看还是理解力不行,这些项目真的是...太大了呀~~~~ 昨天大概浏览了一下Flask,发现里面的example很有意思,代码极少,思路框架十分清晰,推荐新手小朋友入坑看项目代码. 这里就minitwit的项目在windows下的部署做下简要介绍,因为官方的README在是针对Linux环境的. 项目地址: https://github.com/palle…
1.为什么要使用虚拟环境 在Python中,不同的应用可能需要用到不同版本的第三方包,而这些第三方包被统一存放到目录site-packages中,不同版本的包容易相互覆盖,如安装Django 2.1时,把Django 1.8 覆盖掉.导致使用Django 1.8的应用可能出现问题.因此需要使用虚拟环境,隔离出不同的'空间':让每个应用拥有各自独立的环境来使用各自不同的第三方包. 而使用Virtualenv就可以为应用创建虚拟环境. 2.安装和配置Virtualenv 操作系统:Mac/Linux…
python中的这些坑,早看早避免. 说一说python中遇到的坑,躲坑看这一篇就够了 传递参数时候不要使用列表 def foo(num,age=[]): age.append(num) print("num",num) return age print(foo(1)) print(foo(2)) print(foo(3)) 上面的代码输出的结果并不是我们预期的那样,打印出三个数组[1],[2],[3]. 而是下面这样. num 1 [1] num 2 [1, 2] num 3 [1,…
一.元组转换 数字 tu = (1) tu1 = (1,) print(tu,type(tu)) print(tu1,type(tu1)) 执行输出: 1 <class 'int'>(1,) <class 'tuple'>  字符串 tu = ('lao') tu1 = ('lao',) print(tu,type(tu)) print(tu1,type(tu1)) 执行输出: lao <class 'str'>('lao',) <class 'tuple'>…
python读写文件的api都很简单,一不留神就容易踩"坑".笔者记录一次踩坑历程,并且给了一些总结,希望到大家在使用python的过程之中,能够避免一些可能产生隐患的代码. 1.read()与readlines(): 随手搜索python读写文件的教程,很经常看到read()与readlines()这对函数.所以我们会常常看到如下代码: with open(file_path, 'rb') as f: sha1Obj.update(f.read()) or with open(fil…