Python爬虫、数据分析、可视化学习笔记(一、梦开始的地方)

系列文章持续更新中......

文章目录

 

一、工具及环境配置

1.Python3.8(官网下载)

2.Pycharm(官网下载)

3.Anaconda(官网下载)

4.环境配置(传送门,感谢前人栽树)

二、基础语法知识

1.Hello python

2.变量及数据结构

A.变量

B.数据结构

a.数字、字符串

b.数据类型的查询和转换

 c.列表、字典、元组与集合

 d. 元组与集合

3.运算符

A.算数运算符和字符串运算符

B.比较运算符(关系运算符)

C.赋值运算符

D.逻辑运算符

4.编码基本规范

A.缩进(类似于Word里的首行缩进)

B.注释

5.控制语句

A.if语句

B.for语句

C.while语句

D.语句嵌套

6.函数

A.内置函数

7.自定义函数

A.函数的定义与调用

B.定义有返回值的函数

C.变量的作用域

8.模块的导入

A.import语句导入法

B.from语句导入法

C.as保留字

小结


前言

吼吼吼放寒假了,开始整活。此文系列文仅供记录鄙人Python爬虫、数据分析、可视化的学习历程和遇到的一些问题(后续称Python学习笔记),希望能给大家带来一丢丢参考价值。(也希望各路大佬给予指点,感激不尽!!!)

这篇文章主要粗略的讲一下Python的基础语法。



一、工具及环境配置

1.Python3.8(官网下载)

https://www.python.org/https://www.python.org/https://www.python.org/

2.Pycharm(官网下载)

https://www.jetbrains.com/pycharm/https://www.jetbrains.com/pycharm/https://www.jetbrains.com/pycharm/

3.Anaconda(官网下载)

https://www.sogou.com/link?url=hedJjaC291NDD2uttND2hRqCsGwvUR5vbhhp9J6i36M.https://www.sogou.com/link?url=hedJjaC291NDD2uttND2hRqCsGwvUR5vbhhp9J6i36M.https://www.sogou.com/link?url=hedJjaC291NDD2uttND2hRqCsGwvUR5vbhhp9J6i36M.

4.环境配置(传送门,感谢前人栽树)

Pycharm:

https://blog.csdn.net/ling_mochen/article/details/79314118?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522164062340816780274194722%2522%252C%2522scm%2522%253A%252220140713.130102334..%2522%257D&request_id=164062340816780274194722&biz_id=0&utm_medium=distribute.pc_search_result.none-task-blog-2~all~top_ali~default-4-79314118.pc_search_insert_es_download_v2&utm_term=pycharm&spm=1018.2226.3001.4187https://blog.csdn.net/ling_mochen/article/details/79314118?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522164062340816780274194722%2522%252C%2522scm%2522%253A%252220140713.130102334..%2522%257D&request_id=164062340816780274194722&biz_id=0&utm_medium=distribute.pc_search_result.none-task-blog-2~all~top_ali~default-4-79314118.pc_search_insert_es_download_v2&utm_term=pycharm&spm=1018.2226.3001.4187https://blog.csdn.net/ling_mochen/article/details/79314118?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522164062340816780274194722%2522%252C%2522scm%2522%253A%252220140713.130102334..%2522%257D&request_id=164062340816780274194722&biz_id=0&utm_medium=distribute.pc_search_result.none-task-blog-2~all~top_ali~default-4-79314118.pc_search_insert_es_download_v2&utm_term=pycharm&spm=1018.2226.3001.4187

Anaconda:

https://blog.csdn.net/dudusha1/article/details/79626140?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522164062276216780269867059%2522%252C%2522scm%2522%253A%252220140713.130102334.pc%255Fall.%2522%257D&request_id=164062276216780269867059&biz_id=0&utm_medium=distribute.pc_search_result.none-task-blog-2~all~first_rank_ecpm_v1~rank_v31_ecpm-4-79626140.pc_search_insert_es_download_v2&utm_term=python%E7%8E%AF%E5%A2%83%E9%85%8D%E7%BD%AE&spm=1018.2226.3001.4187https://blog.csdn.net/dudusha1/article/details/79626140?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522164062276216780269867059%2522%252C%2522scm%2522%253A%252220140713.130102334.pc%255Fall.%2522%257D&request_id=164062276216780269867059&biz_id=0&utm_medium=distribute.pc_search_result.none-task-blog-2~all~first_rank_ecpm_v1~rank_v31_ecpm-4-79626140.pc_search_insert_es_download_v2&utm_term=python%E7%8E%AF%E5%A2%83%E9%85%8D%E7%BD%AE&spm=1018.2226.3001.4187https://blog.csdn.net/dudusha1/article/details/79626140?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522164062276216780269867059%2522%252C%2522scm%2522%253A%252220140713.130102334.pc%255Fall.%2522%257D&request_id=164062276216780269867059&biz_id=0&utm_medium=distribute.pc_search_result.none-task-blog-2~all~first_rank_ecpm_v1~rank_v31_ecpm-4-79626140.pc_search_insert_es_download_v2&utm_term=python%E7%8E%AF%E5%A2%83%E9%85%8D%E7%BD%AE&spm=1018.2226.3001.4187

用VScode的UU们同理:

https://blog.csdn.net/Zhangguohao666/article/details/105040139?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522164062305116780271520192%2522%252C%2522scm%2522%253A%252220140713.130102334.pc%255Fall.%2522%257D&request_id=164062305116780271520192&biz_id=0&utm_medium=distribute.pc_search_result.none-task-blog-2~all~first_rank_ecpm_v1~rank_v31_ecpm-12-105040139.pc_search_insert_es_download_v2&utm_term=%E9%85%8D%E7%BD%AEpython&spm=1018.2226.3001.4187https://blog.csdn.net/Zhangguohao666/article/details/105040139?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522164062305116780271520192%2522%252C%2522scm%2522%253A%252220140713.130102334.pc%255Fall.%2522%257D&request_id=164062305116780271520192&biz_id=0&utm_medium=distribute.pc_search_result.none-task-blog-2~all~first_rank_ecpm_v1~rank_v31_ecpm-12-105040139.pc_search_insert_es_download_v2&utm_term=%E9%85%8D%E7%BD%AEpython&spm=1018.2226.3001.4187https://blog.csdn.net/Zhangguohao666/article/details/105040139?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522164062305116780271520192%2522%252C%2522scm%2522%253A%252220140713.130102334.pc%255Fall.%2522%257D&request_id=164062305116780271520192&biz_id=0&utm_medium=distribute.pc_search_result.none-task-blog-2~all~first_rank_ecpm_v1~rank_v31_ecpm-12-105040139.pc_search_insert_es_download_v2&utm_term=%E9%85%8D%E7%BD%AEpython&spm=1018.2226.3001.4187


二、基础语法知识

梦开始的地方

在远方的荒野里,提到你的名字它们都饱含敬畏和惋惜之情。

In wilds beyond they speak your name with reverence and regret.

没有人能驯服我们野蛮的灵魂,而你接受了挑战。

For none could tame our savage souls yet you the challenge met.

                                                                                                                       ——《圣巢挽歌》


1.Hello python

Say hello先啦!

print('hello Python')

2.变量及数据结构

A.变量

变量可由任意数量的字母、数字、下划线组合而成,但必须以字母和下划线开头,数字不能开头

不要用Python的保留字组或内置函数,变量名要有一定意义;

变量区分大小写,A和a是两个不同的变量;

eg:a、b、c、a_1、b_1、c_1、age、name

B.数据结构

a.数字、字符串

数字

整型:int

浮点型:float

字符串

一个个字符连接起来的组合,组成字符串的字符可以是数字、字母、符号、汉字等......

用单引号定义:print('23考研上岸')

用双引号定义:print("23考研上岸")

用三引号定义:print(''''23考研上岸''')

运行结果如下:(三个结果相同)

这里我们注意一下转义字符\n可以用来换行。

b.数据类型的查询和转换

查询数据类型:type()函数

eg:

name = 'Lillian'

number = '66'

number1 = 66

number2 = 66.6

print(type(name))

print(type(number))

print(type(number1))

print(type(number2))

运行结果如下:

 转换数据类型:str()函数、int()函数、float()函数

eg:

a ='88'

b=int(a)

print(type(a))                    

print(type(b))              #str()函数应用

print(int(6.6))

print(int(0.666))           #int()函数应用

pi='3.14'

pi1=float(pi)

print(type(pi))

print(type(pi1))            #float()函数

运行结果如下:

 c.列表、字典、元组与集合

列表List

格式:列表名 = [元素1、元素2、元素3......]

列表长度(元素个数):len()函数

提取单个元素:[序号]

提取多个元素(列表切片):[序号1,序号2] 

(左闭右开,序号1元素可取到,序号2元素取不到)

添加元素:append()函数

列表与字符串互相转换(文本筛选):'连接符'.join(列表名);字符串.split('分隔符')

eg:

class1 = ['小赵','小钱','小李','小周','小吴']

a = len(class1)

print(a)            #统计列表元素个数


b = class1[1]

print(b)            #提取列表单个元素


c = class1[1:4]

print(c)            #提取列表多个元素


score = [ ]         #创建一个空列表

score.append(66)    #用append()函数给列表添加元素

print(score)

score.append(88)  #用append()函数给列表再添加一个元素

print(score)


d = ','.join(class1)    #列表转换成字符串

print(d)


e = 'Kiki do you love me'    #字符串转换列表

print(e.split(' '))

运行结果如下:

 字典Dictionary

格式:字典名 = {键1:值1,键2:值2,键3:值3.....}

键key相当于一把钥匙,值value相当于一把锁,一一对应。

提取单个元素:字典名 ['键名']

遍历:items()函数

eg:

class1 = {'小赵': 85,'小钱': 95,'小李': 75,'小周': 65,'小吴': 55}

score= class1['小钱']
print(score)                  #提取列表单个元素

a = class1.items()            #遍历字典

运行结果如下:

此外,还有一种遍历字典的方法:

class1 = {'小赵': 85,'小钱': 95,'小李': 75,'小周': 65,'小吴': 55}
for i in class1:    #i为字典里的键,class1[i]为对应值
   print(i + ': ' + str(class1[i]))   #代号的数据类型为数字,所以在字符串拼接前要先用str()函数转换

运行结果如下:

 d. 元组与集合

 元组与集合

这个运用的比较少,我们直接看实例:

eg:

a = ('小赵','小钱','小李','小周','小吴')     #元组用()来定义,其中的元素不可修改
print(a[1:3])

b = ('小赵','小钱','小李','小周','小吴')  #集合是一个无序的不重复序列,可以使用{}定义也可用set()函数定义
print(set(b))    

运行结果如下:

3.运算符

A.算数运算符和字符串运算符

符号名称

含义

+加法运算符计算两个数相加的和/拼接字符串
-减法运算符计算两个数相减的和
-负号表示一个数的相反数

*

乘法运算符计算两个数相乘的积/将字符串复制指定份数
/除法运算符

计算两个数相除的商

**幂运算符

计算一个数的某次方

//取整除运算符计算两个数相除的商的整数部分(不计小数,不做四舍五入)
%取模运算符常用于计算两个正整数相除的余数

B.比较运算符(关系运算符)

比较运算符用于比较两个值之间的大小关系,其运算结果为True(真)和False(假)。

使用比较运算符来构造判断条件,根基判断结果来决定程序的运行方向。

符号名称含义
>大于运算符判断左侧值是否大于右侧值
<小于运算符判断左侧值是否小于右侧值
>=大于等于运算符判断左侧值是否大于等于右侧值
<=小于等于运算符判断左侧值是否小于等于右侧值
==等于运算符判断左右两位侧值是否相等
!=不等于运算符判断左右两位侧值是否不相等

C.赋值运算符

符号名称含义
=简单赋值运算符将运算符右侧运算结果分配给左侧
+=加法赋值运算符执行加法运算并将结果分配给左侧
-=减法赋值运算符执行减法运算并将结果分配给左侧
*=乘法赋值运算符执行乘法运算并将结果分配给左侧
/=除法赋值运算符执行除法运算并将结果分配给左侧
**=幂赋值运算符执行求幂运算并将结果分配给左侧
//=取整除赋值运算符执行取整除运算并将结果分配给左侧
%=取模赋值运算符执行取模运算并将结果分配给左侧

D.逻辑运算符

逻辑运算符运算结果为True(真)和False(假),因此也常用于构造判断条件来决定程序的运行方向。

符号名称含义
and逻辑与只有运算符两侧值都为True才返回True,否则返回False
or逻辑或只有运算符两侧值都为False才返回False,否则返回True
not逻辑非运算符右侧值为True时返回False,为False时返回True

4.编码基本规范

A.缩进(类似于Word里的首行缩进)

Python里的缩进快捷键是【Tab】键(换行的时候按回车会自动缩进),在if、for、while等语句中都会用到。

如果需要减小缩进,可以通过快捷键【Shift+Tab】来实现

如果缩进不规范运行就会报错。

eg:

1. x = 1
2. if x > 0:
3.     print('正数')
4. else:
5.    print('负数')

这里第3.和5.行代码之前必须按【Tab】键缩进,否则会报

B.注释

单行注释:#+(注释内容)

多行注释:

'''

(注释内容)

'''

5.控制语句

A.if语句

if语句主要用于根据条件是否成立执行不同操作,基本语法格式如下:

if 条件:        #别忘了冒号啊
   代码1        #代码前要有缩进
else:          #别忘了冒号啊
   代码2        #代码前要有缩进 

如果不需要在条件不成立时执行指定操作,可省略else。

elseif可缩写为elif。

B.for语句

for语句主要用于完成指定次数的重复操作,基本语法格式如下(同理注意冒号缩进):

for i in 序列      #这里i可换成其他变量
    需要重复执行的代码
    

C.while语句

while语句主要用于指定条件成立时重复执行操作,基本语法格式如下(同理注意冒号缩进):

while 条件:
    需要重复执行的代码

while语句常与Ttue搭配用来创建永久循环,基本语法格式如下:

while True:
    需要重复执行的代码

强制停止永久循环,可在Pycharm里通过快捷键【Ctrl+F2】实现。

D.语句嵌套

语句嵌套即控制语句间相互嵌套,以达到目的效果。

将上述基本语法组合使用即可,我们直接看实例:

eg1:在if语句中嵌套if语句

math = 100
chinese = 80
if math >= 90:
    if chinese >= 90:
        print('优秀')
    else:
        print('继续努力')
else:
    print('继续努力')

运行结果如下:

eg2:在for语句中嵌套if语句

for i in range(5):
    if i ==1:
        print('继续努力')
    else:
        print('干得漂亮')

运行结果如下:

6.函数

A.内置函数

Python 的开发者一般会把那些需要频繁使用的函数制作成内置函数,

我们就来看看这些常用的内置函数。

len()函数:用于统计列表元素个数,字符串长度,在实战中常与range()函数连用。

replace()函数:用于在字符串中查找和替换,基本语法格式如下:

字符串.replace(要查找的内容,要替换为的内容)

strip()函数:用于删除字符串收尾的空白字符串(包括换行符和空格),基本语法格式如下:

字符串.strip()

split()函数:按指定的分隔符将字符串拆分为一个列表,基本语法格式如下:

字符串.split('分隔符')

format函数:用于格式化字符串,实战中可将不同数据结构的值拼接为字符串,基本语法格式如下:

字符串.format(要格式化的值)

这里我们讲一下拼接字符串的其他方法:

①百分号占位符法

百分号占位符不代表拼接的实际内容,而是代表一个字符串,拼接的内容是在单独的“%”后,并用()扩起。

eg:

a = '代号: %s ' %('007')
print(a)

运行结果:

代号: 007

常用的百分号占位符还有“%s”(代表一个字符串)、“%d”(代表一个整型数字)。

②f-string方法

该方法通过修饰字符f或F引领字符串,然后再字符串中使用{ }包裹需要拼接的字符串或表达式,在{ }内还可以使用format()函数类似的格式叙述符。

eg:

age = 20
height = 1.83
hobby = '绘画'
a = f'年龄{age}岁,身高{height}米,爱好{hobby}。'
print(a)

运行结果:

年龄20岁,身高1.83米,爱好绘画。

7.自定义函数

A.函数的定义与调用

在Python中使用def语句定义一个函数,基本语法如下:

def  函数名(参数):

        实现函数功能的代码

B.定义有返回值的函数

如果需要函数的执行结果做其他事,则需要在定义函数时要使用return语句来定义函数的返回值。

C.变量的作用域

函数内使用的变量与函数外的代码是没有关系的,是属于函数内部的局部变量,不会影响函数外部的变量。

8.模块的导入

A.import语句导入法

该方法会指定模块中的所有函数,适用于需要使用指定模块中的大量函数的情况,基本语法结构如下:

import 模块名

eg:

import math      #导入math模块
a = math.sqrt(1726596) #sqrt()是math模块的函数
print(a)

运行结果:

1314.0

B.from语句导入法

当需要的模块中函数特别多的时候,使用import导入会导致程序运行速度变慢,打包后程序体积也很大。

所以当只需要用到模块中的少数几个函数时可以用from语句导入法,基本语法结构如下:

from 模块名 import 函数名

eg:

from math import sqrt       #导入math模块中sqrt()函数
a = sqrt(1726596) #可以直接写函数名
print(a)

运行结果:

1314.0

C.as保留字

如果模块名或函数名很长,可以在导入时用as保留字简化函数。

eg:

from math import factorial as  fc  #导入math模块中的factorial函数并简写为fc

小结

此系列文,仅记录鄙人python学习路程的一个片段,参考价值可能不大,写的不好请多多谅解,欢迎大佬们评论留言,指正鄙人的不足之处。(感激不尽!!!)

最后,

生活于生活之上,便知晓百花和万物沉默的思想。不管怎样,记得好好吃饭。

  • 2
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

Dr.Waverly

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

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

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

打赏作者

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

抵扣说明:

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

余额充值