爬虫学习笔记1——Python基本语法

本文介绍了Python的基础语法,包括PyCharm文件模板、变量类型、运算符、流程控制结构如if-else和for循环,以及字符串、列表、元组、字典等数据结构的操作。此外,还涉及函数定义、文件I/O、序列化与反序列化以及异常处理的概念和使用方法。
摘要由CSDN通过智能技术生成

Python语法

0.Pycharm文件模板

# _*_ coding : UTF-8 _*_
# @Time : ${DATE} ${TIME}
# @Author : LinFeng
# @File : ${NAME}
# @Project : ${PROJECT_NAME}

1.注释

单行 #

多行 ''' '''


2.变量

2.1 变量类型

  • number

    • int(long)
    • float(double)
    • complex
  • boolean

    • True
    • False
  • string(char)

  • list(列表) 数组?

    []

  • tuple(元组)

    ()

  • dict(字典) 结构体?
    {key:value}

2.2 查看变量类型

type()

2.3 命名规范

大小驼峰+下划线命名法

2.4 类型转换

  • int()
  • float()
  • bool()
  • str()

3.运算符

3.1 运算符类型

加减乘除 +-*/

整数除 //

取余 %

指数 **

多变量赋值 d,e,f = 1,2,3

逻辑运算符 and与(&&)or或(||)


4.输入输出

4.1 输出

  • %s 字符串
  • %d 整数

格式化输出

print('我的名字是%s,我的年龄是%d' % (name,age))

4.2 输入

vaule = input('请输入xxx:')


5.流程控制

5.1 if

不要漏:

if value > 18:
	print('xxxx')
elif value >30:
    print("aaaaa")
else:
    print('ddd')

5.2 for

for i in range(5) # 0-4
for i in range(5,10) # 左闭右开,5-9
for i in range(5,10,3) # (起始,结束,步长)

6.字符串操作

  • 获取长度:len
  • 查找:find
  • 判断:startswith,endswith
  • 出现次数:count
  • 替换内容:replace
  • 切割字符串:split
  • 修改大小写:upper,lower
  • 去空格:strip
  • 拼接:join

7.列表操作

7.1 添加

  • append(object) 追加
  • insert(index, object) 插入(注意index值为插入值的下标)
  • extend (Iterable迭代)似乎没什么用?

7.2 修改

通过下标[]=

7.3 查找

  • in
if food in foodList:
	print("ssss")
else :
	print("3333")
  • not in
if food not in foodList:
	print("ssss")
else :
	print("3333")

7.4 删除

  • del 根据下标来删除
del a_list[3]
  • pop() 删除最后一个元素
a_list.pop()
  • remove() 根据值删除
a_list.remove("ffff")

8.元组操作

  • 元组元素不可以被修改!!!!
  • 只有一个元素的元组需要在唯一的元素后面写,

9.切片

  • 语法

    注意!!!仍然是左闭右开区间

    • [起始:结束]
    • [起始:结束:步长]
    • [起始:]
    • [:结束]

10.字典操作

10.1 定义&访问

person = {'name':'李治','score':100000000000000}

# 访问
print(person['name'])
print(person['score'])

#######################
# print(person.score) 寄,达咩
#######################

## but
print(person.get('score')) #ojbk
#######################

# 关于报错
print(person['sex'])		# keyerror
print(person.get('sex'))	# None

10.2 修改

person['name'] = '法外狂徒'

10.3 添加

同修改,如果存在就修改,不存在就添加

person['name'] = '法外狂徒'
person['sex'] = 'We do not kown'

10.4 删除

  • del
del person['name']	# 删除key
del person			# 删除字典对象
  • clear
person.clear()		# 清空对象key,保留字典结构

10.5 遍历

# 1.遍历key
for key in person.keys():
	print(key)
	
# 2.遍历value
for value in person.values():
	print(value)
	
# 3.遍历key&&value
for key,value in person.items():
    print(key,value)
    
 # 4.遍历项,每个项实际上是元组
for item in person.items():
    print(item)

11.函数

# 语法
def <函数名>(参数表)print("李治牛逼!!!!!!")
    print("李治我大哥!!!!!!")
    return <>
################################  

# 传参
def sum(a,b)
# 1.位置传参
sum(11,55)
# 2.关键字传参
sum(b=11,a=55)

12.文件

12.1 打开&关闭

####### 打开 #######
fp = open('text.txt','w)
####### 写 #######
fp.write('hello\n'*3)
####### 读 #######
# 读一字节
content = fp.read()
# 读一行
content = fp.readline()
# 读完,以行分界组成列表
content = fp。readlines()
####### 关闭 #######
fp.close()
  • 文件路径

    • 绝对路径

    • 相对路径

      • text.txt 当前文件夹
      • ./text.txt 当前文件夹
      • ../text.txt上一级文件夹
      • demo/text.txt demo文件夹
  • 打开模式

    模式可做操作若文件不存在是否覆盖文件原来内容
    r只读报错——
    r+可读、可写报错
    w只写创建
    w+可读、可写创建
    a只写创建否,追加写
    a+可读、可写创建否,追加写

12.2 序列化与反序列化

  • 定义

    • 序列化:对象->字节序列

    • 反序列化:字节序列->对象

      使用JSON模块实现

  • 序列化

import json

fp = open('text.txt','w')
name_list = ['zs','lz']

# dumps()
names = json.dumps(name_list)
fp.write(names)
          
# dump()
json.dump(name_list,fp)
          
fp.close()

反序列化

import json

fp = open('text.txt','r')

# loads()
content = fp.read()
result = json.loads(content)

# load()
result = json.load(fp)

不加s的都🐂


13.异常

try:
    fp = oprn('text.txt','r')
    fp.read()
except FileNotFoundError:
    print('世界毁灭了!!!!!!')
  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值