Python 爬虫及pytorch基础知识学习笔记

1.生成顺序列表/元组

s = [x for x in range(1,10)]

2.Python输出格式化

print("Python{} {}/{}/{}".format('学习',2019,9,6))
print("Python%s %d/%2d/%2d"%('学习',2019,9,6))# %s输出字符串,%2d输出2格整数
#此外还有%f,%4.2f等控制小数点后位数

3.lambda函数用法

用于定义一个匿名函数。函数功能非常简单,没必要单独定义一个函数,此时,lambda派上用场。

f = lambda x: x*x + 1
f(3)
f(5)

4.map函数用法

map函数,用于一一映射关系,非常简便。输入参数为映射关系和序列(通常为列表,元组也可以)。通过一个定义的函数对序列中元素进行一一映射,返回的是一个列表。

f = lambda x: x*x + 1
s = [x for x in range(1,10)]
ss = map(f,s)
for i in ss:
	print("函数值:\t%d"%(i))

5.Python特殊注释

#!/usr/bin/python3 env

这一句是指明python编译器位置。在Windows环境下,这是不必须的,而Linux环境下必须要有,为兼容Linux环境,加上这一句。

#coding=utf-8

这一句是指定字符编码,python3默认utf-8,但python2中使用的是ASCII编码,为了兼容python2,加上这一句。

6.用正则表达式去除字符串中的非汉字部分

import re #引入正则
def remove(text):
	remove_chars = '[A-Z0-9’a-z!"#$%&\'()*+,-./:;<=>?@,。?★、…【】《》?“”‘’![\\]^_`{|}~]+'
    return re.sub(remove_chars, '', text)

7.使语句仅在自身运行时执行,而在被调用时不被执行

if __name__ == "__main__":
	print("Print only in running")
#if下面的语句将在被调用时不会执行

8.python读写文件方式

基本上与C语言的关键词相同

r只读模式文件必须存在(默认模式)
w只写模式文件不存在则创建,存在则清空后写入
a追加模式文件不存在则创建,存在则在内容后追加
r+读写模式文件必须存在,从头开始,写多少则覆盖多少,同时可读
w+读写模式文件不存在则创建,存在则清空后写入、同时可读
a+读写模式文件不存在则创建,存在则在内容后写入,同时可读

读写示例:

fr = open('test1.txt','r+')#打开文件
for line in fr: #遍历文件
    print('每行内容为:',line) #打印文件中每一行内容
fr.close()#关闭文件

fw = open('test2.txt','w+')#打开或创建文件
fw.write('Python写入操作')
fw.close()#关闭文件

注:在读操作时,注意文件指针是否在文件最末端,若在最末端,则需要用seek(0)将指针重置到首端,才能读取到文件内容,如:fr.seek(0)

9.TXT文件编码

txt文件默认为gbk编码,但字符编码为utf-8时,则会报错,此时需要指定字符编码为utf-8

with open('test.txt','w',encoding = 'utf-8') as fp:
	fp.write(result)

10.应用scrapy模块时引用Item的两种方式

1.下面这种在Pycharm中会提示错字,但仍能运行

from FindMovies.items import FindmoviesItem

2.而用下面这种方法代替,则不会出现问题

import sys
sys.path.append('E:\\PyCharm2017\\program\\FindMovies\\FindMovies')# 当前items所在的路径
from items import FindmoviesItem

11.电脑有多python版本下,scrapy框架的建立

  1. 一般scrapy的框架建立,只需要在命令行找到存放程序的路径下,输入以下指令:
scrapy startProject scrapyDemo	#建立名为scrapyDemo爬虫框架
tree scrapyDemo	#查看框架产生的项目分支

若返回了如下的项目分支,则代表创建成功
项目树
2. 若存在多个版本的python,则可能出现
Fatal error in launcher: Unable to create process using…的报错,这时候,则需要输入指定python版本的命令进行创建:

python -m scrapy startproject scrapyDemo

此时就能正常创建了

12.pytorch模型的下载地址及保存位置

  1. pytorch各个模型下载链接如下:
    链接: 博客;直接复制下载地址,在浏览器粘贴就能下载。
  2. 下载的模型保存位置可以由以下方式确定:
    在IDLE中输入
import torchvisvion.models as models
resnet = models.resnet18(pretrained=True)

会弹出来下载文件及其存放位置,直接把我们下载好的模型复制到改路径下即可。

13.CNN与RNN的区别

CNN是卷积神经网络的缩写,RNN是循环神经网络的缩写。CNN的局限性在于其输入输出的序列是固定的,而RNN是可变的,用图形表示如下:
CNN与RNN的区别
CNN是one to one,RNN是one to many 、many to one、many to many 。RNN适用于输入输出序列可变的场景,如:机器翻译、文本处理等。总的来说,RNN是为了处理变长的数据而设计的。

14.遇到的错误及解决方案

1.TypeError: not all arguments converted during string formatting

这个是参数不对应的问题,在用%传递参数时出现。
解决办法:
将%用.format()代替。

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值