因为初来匝道,这样子写不知道会不会有问题,这里我先写下来,后期如果有问题,再修改。这里只记录一个小渣渣的学习过程和总结。
(中途学习爬虫也断断续续,还在继续努力中,但也总结自己的一些个人经验。)
1、零基础学习爬虫,还是要学python和HTML的基础知识,一上来就搞,容易头晕。我是用菜鸟教程和视频学习结合的方式,来打基础的。
2、打完基础,再去看爬虫的视频,就比较有谱了。
一、介绍工具
1、使用工具
python3.5 python自带的IDLE
经验:python的安装过程对于小渣渣来说,是一个痛苦的过程,我自己的经验,折腾了3天吧,后来发现了一个很好用的工具——PHPWAMP,很好解决我的问题,感谢大佬,给你舔JIO。
2、学习工具
菜鸟教程 崇天
都是视频,个人感觉还不错。风格很有特色,一个非常有趣,不会无聊;一个很有系统,学的很安心。
二、知识点总结
1、基础语法
(1)交互式编程和脚本编程
直接打开安装的python软件里面的这个文件——idle.bat ,就是可以进行交互式编程,意思就是边写程序边反馈。
Ctrl+N 就能进行脚本编程,意思是全部写完,再去验证。
(2)严格缩进:python是一个缩进严格的语言,所以看着很舒服,之前看到说C语言还搞了一个国际乱码大赛,哈哈哈哈笑死我了。
(3)标识符:由由字母、数字、下划线组成,然而这个拿来干嘛我也不知道。
(4)保留字符:大概就是会和python运算、函数相撞的字符不能用作常数或变数,或任何其他标识符名称。
(5)引号:有三种格式,没什么差别,就用来方便需要使用多种引号出现的情况 。
#这是一个注释
(6)空行并不是python语法的一部分;/n转行符;/转移符(这玩意儿在正则表达式里面会出现很多,头大);同一行写多条语句用分号‘;’。
(7)缩进相同的组成一个代码块,像if、while、def和class这样的复合语句,首行以关键字开始,以冒号( : )结束,该行之后的一行或多行代码构成代码组。
(8)命令参数:这里也不是很了解。
2、变量类型
(1)标准数据类型
●Numbers(数字):10
●String(字符串):‘10’
●List(列表):()
●Tuple(元组):[ ]
●Dictionary(字典)
(2)赋值:
a = b = c = 1 / a, b, c = 1, 2, "john" 这都可以。
(3)Numbers(数字)
支持四种不同数字类型
●int:10
●long:10L
●float:10.0
●complex:3.14j
(4)String(字符串):'skr'
取值方式:从左到右是0开始,记住世界都是零开始的,哈哈哈哈,好有哲理。
从右到左,是-1开始,连接恰好是一个完整数字链。
[0:]取值第二个开始及其以后的。
(4)列表list
用中括号[],取值方式和字符串一样的 。
(4)元祖tuple
用括号(),取值方式和字符串一样的 。
(4)字典dict
用dict{},取值方式和字符串一样的 。
3、运算符
(1)算数运算符
+ 加号 ;-减号; *乘号; /除号; **幂次方 ;%取余;//向下取整
(2)比较运算符
=等于;!= 或<>不等于;>=大于等于;<=小于等于;>大于;<小于。
(3)赋值运算符
●= 简单赋值;c=a+b
●+=加法赋值运算;c=c+a等效于c+=a(这一块开始看我比较模糊,后来发现一个笨办法,就是直接把C+移到等号右边。)
●-=减法赋值运算;c=c-a等效于c-=a
●*= /= %= **= //=这些运算符同上。
(4)python 位运算符:目前我还没有遇到过,遇到再来补充
(5)逻辑运算符:and ; or ;not
(6) 成员运算符: in ; not in
(7)身份运算符: is;is not
is 和==的区别,is是用来判断两个变量是否引用同一个对象;==是用来判断两个变量的值是否相等。
(8)运算符优先级:
跟小学学的一样,先乘除后加减,这个优先级,最好还是用()来区别。
4、python条件语句
(1)if else 如果 那么 否则
number=10
if number==10:
print ‘true’
else:
print‘false’
(2)elif(这里就是else+if的意思)
number=10
if number==10:
print ‘true’
elif number==20:
print‘嘿嘿’
else:
print‘嘿嘿’
(3)前面说的运算符,就可以在这里实现条件比较
number=9
if number <=10 or number >=8:
print 'you are right '
elss:
print '?? '
5、循环语句儿
(1)for 循环
给定条件循环,对就继续,错了就退出
fruit in=['banana','apple','mango']
for index in rang( len(fruit)):
print'当前水果是:'fruit(index)
print'bye'
(2)while循环
重复执行语句
number=1
while number<=9 :
number+=1
if number%2>0: #挑选出双数
print number
(3)for和while结合
(4)循环控制语句
break:在语句块执行过程中终止循环,并且跳出整个循环
number =10
while number>0:
print 'number'
number=number-1
if number==5
break
print'bye'
continue:在语句块执行过程中终止当前循环,跳出该次循环,执行下一次循环。
number =10
while number>0:
print 'number'
number=number-1
if number==5
countinue
print'bye'
pass:空语句,保持程序结构完整性。
跟def配合,定义一个函数,但是还没想好这个函数内容是什么,就可以加一个pass,保证结构完整。
6、 数字、字符串、元祖、列表、字典 、日期 里面的内容需要记忆的比较多,用到的时候再去网站看看。
7、Python 函数
def
- 函数的第一行语句可以选择性地使用文档字符串—用于存放函数说明。
- 冒号开始,并缩进
- return 一个值
参数的类型
必备参数:须要要和参数长得一样,才能被正确输入
关键字参数:会有关键词参数
默认参数:如果不输入参数,就有一个备用参数
不定长参数:不确定参数,已备后续添加参数
lambda:匿名函数,用来解决函数起名困难、临时使用函数等困难。封装这个意思我还不太理解。
8、导入库
import
from import 导入库中的某一制定部分
from match import * 导入一个库的全部内容
这个好像只需要知道就可以了
dir:不带参数时,返回当前范围内的变量、方法和定义的类型列表;带参数时,返回参数的属性、方法列表。如果参数包含方法__dir__(),该方法将被调用。如果参数不包含__dir__(),该方法将最大限度地收集参数信息。
全局变量和局部变量:主要看变量所在位置(缩进),全局变量和局部变量可以是同一个变量。
9、打开、导入文件,这一块学习还不是特别好,后期开始使用的时候再来补充。
10、Python异常处理
可以用try except
11、面向对象这一块知识。目前还没有用到。