python问题

一、python问题

1.匿名函数变量定义引用问题

下面的输出结果全是18

def TestFun():
    temp = [lambda x : i*x for i in range(10)]
    return temp

for EveryLambda in TestFun():
    print(EveryLambda(2))

解:
因为python中变量是先定义再引用,(同一个地址重复赋值导致定义的数值被覆盖)而lambda匿名函数又是全执行完了再引用,所以引用的值(i)全是最后一个(9)
加一个默认参数

def TestFun():
    temp = [lambda x,i=i : i*x for i in range(10)]
    return temp

for EveryLambda in TestFun():
    print(EveryLambda(2))

加了默认参数之后,python解释器每遇到默认参数时,都会初始化默认参数(i),这样,每循环一次,i就被引用一次。

python换源

用户目录下新建pip文件夹,文件夹中新建pip.ini文件,将下列写入文件夹

[global]
index-url=http://mirrors.aliyun.com/pypi/simple/

[install]
trusted-host=mirrors.aliyun.com

常见国内镜像源

(1)阿里云 http://mirrors.aliyun.com/pypi/simple/
(2)豆瓣http://pypi.douban.com/simple/
(3)清华大学 https://pypi.tuna.tsinghua.edu.cn/simple/
(4)中国科学技术大学 http://pypi.mirrors.ustc.edu.cn/simple/
(5)华中科技大学http://pypi.hustunique.com/

windows中批量安装插件包时跳过报错继续安装

import sys
from pip._internal import main as pip_main

def install(package):
    pip_main(['--default-timeout=1000','install','-U', package])

if __name__=='__main__':
    with open(sys.argv[1]) as f:
        for line in f:
            install(line)

上方代码假如在pips_install.py
执行此脚本
python pips_install.py [批量安装.txt 文件]

二、pycharm

1.使用scrapy导包失败(找不到item模块)

整个项目,右键。
在这里插入图片描述

三、爬虫之scrapy

配置

  • 上面的找不到item模块
    #其实就看你是哪个模块运行的框架,然后目录名.item impore 类名就行
    #假如创建的爬虫时MySpider
    from MySpider.item import 类名
    编辑器会报错,不用管他,直接运行
    

语法

  • 使用crawlspider的时候,TypeError: ‘Rule’ object is not iterable

这是因为rules就有一个 Rule,而且rules又不是列表,要在Rule后面加逗号(,)
-Rule里面 allow的值
直接填url的格式(页面中href的值),任何多余的都不要加

四、pyinstaller打包问题

ps:运行软件没问题,但是打包后报错:缺失jarcor.text
解决方法
在这里插入图片描述
在这里插入图片描述

总结

持续更新遇到的问题

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

挚友灬

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值