Python笔记

前言

本文只是本人学习的笔记,并不是什么教学。为了方便自己忘记时不用东找西找,有兴趣可以看下


1、os

import os

file = 'test.py'

os.path.basename(file)  # 获取文件名  	    =>  test.py
os.path.dirname(file)   # 获取文件目录  	    =>
os.path.abspath(file)   # 获取文件绝对目录  	=>  F:\python\test.py
os.path.exists(file)    # 判断文件或目录  	=>  true
os.path.isfile(file)    # 判断是否是文件  	=>  true
os.path.isdir(file)     # 判断是否是目录  	=>  false

os.mkdir(file)  # 创建目录
os.rmdir(file)  # 删除目录

f = os.getcwd()			# 返回一个当前工作目录的Unicode对象
os.listdir(f)           # 获取目录下的全部文件
os.path.getsize(file)   # 获取文件大小

fp = open('test.py', 'r', encoding='utf-8')  # 打开文件 w:写入 r:读  a:追加数据

fp.read()               # 读取全部内容
fp.readLine()           # 读取每一行	strip() 去除两端空格
fp.readLines()          # 读取所有,返回列表
fp.write()              # 写入数据
fp.writeLines()         # 写入全部数据
fp.close()              # 关闭文件,释放内存

cmd = r'd:\tools\wget http://mirrors.sohu.com/nginx/nginx-1.13.9.zip'
os.system(cmd)
os.startfile('d:\\统计数据.xlsx') # 打开程序

2、zipfile

import zipfile

zf = zipfile.ZipFile('test.zip','r')	# 构造管理器   r:读
zf.extractall('out')					# 解压缩
zf.nameList()							# 获取压缩文件的信息
zf.infoList()							# 返回列表 
zf.close()								# 关闭对象,释放内存

3、requests

请求模块

import requests

equests.get(url,headers,params)

requests.post(url,data={请求体的字典},headers)  # 必须带data

requests.Session()	# 建立临时会话

4、json

数据交换格式

import  json

json.dump(data_json,fp=filename,ensure_ascii=False) # 将Python对象编码成 JSON 字符串

json.loads(json_str) # 将已编码的 JSON 字符串解码为 Python 对象

5、etree

解析数据(xpath)

from lxml import etree

response = requests.get(url=url,params=param,headers=header).text

html = etree.HTML(response)   # 解析内容

html.xpath('路径')

6、re

正则表达式

import re

re.findall('正则表达式''要查找的文本''模式(re.S)')  # re.S,不会对\n进行中断

re.compile(r'正则表达式') #   =>	kk = re.compile(r'\d+');  kk.findall('one1two2three3four4')

7、selenium

自动化模块

from selenium import webdriver

# 后台静默运行
chrome_options = webdriver.ChromeOptions()
chrome_options.add_argument('--headless')
driver = webdriver.Chrome(executable_path=file, options=chrome_options)  # file=>Chromedriver路径

# 非静默
driver = webdriver.Chrome(executable_path=file)	

driver.current_url	# 显示打开网址的地址

driver.get(url)			            # 打开网页,url=>网页地址

driver.find_element_by_id()	        # 按id查找

driver.find_element_by_class_name()	# 按类名查找

driver.find_element_by_xpath	    # xapth查找

driver.find_element_by_id('id').send_keys(value)	# 输入内容

driver.find_element_by_id('id').click()				# 点击

driver.find_element_by_id('id').screenshot(''./index.png')	# 截图

driver.switch_to.frame('class/id')	# frame

8、time

时间对象

import time

time.time()	# 返回 从 1970年1月1日0点 到 当前时间的 经过的秒数

9、datatime

from datetime import datetime

str(datetime.now())	# 得到类似这样的字符串:‘2022-03-30 23:10:08.911420’

datetime.now().strftime('%Y-%m-%d ** %H:%M:%S')	 # 定输出的时间格式

time.strftime('%Y-%m-%d %H:%M:%S',time.localtime())   # time库来格式化显示字符串

time.strftime('%Y%m%d %H:%M:%S',time.localtime(1434502529)) # 将某个指定秒数时间转化为字符串格式

10、方法

reverse()			反转列表=>ar1 = [1,2,3] var1.reverse() # ar1 = [3,2,1]

append()			添加元素到列表=>arr=[1,2]  arr.append(3) # arr=[1,2,3]

pop()				从列表 取出并删除 一个元素=>arr=[1,2,3] arr.pop(2) #arr=[1,2]

remove()			也是删除列表元素=>arr=[1,2,1] arr.remove('1')  # arr=[2,3]

index()				返回 参数对象 在列表 中的位置,也就是索引var1 = [1,2,3]idx = var1.index(2) # 1

sort()				对列表进行排序

count()				返回字符串对象包含了多少个参数指定的字符串=>'我们,我们球'.count('我们')  # 2

find()				在字符串中查找参数子字符串,返回该位置索引,如果没有返回-1

strip()				去空格=>String.strip()

split()				把字符串切割成数组  

11、编码

encode('utf8')			编码

decode('utf-8)			解码

unicode数字转换为字符=>	chr(50) 	#  '2'

字符转换为unicode数字=>	ord('2')	#  '50'

字符串编码为 unicode转义数字 => String.encode('unicode-escape')

12、字典

{}=>members = {}
		1、添加:members['account1'] = 13	# members = {'account1':13}
		2、修改:members['account1'] = 14	# members = {'account1':14}
		3、删除:members.pop('account1')	# members = {}
		
	遍历:	=>for account,level in members.items():
    		           print (f'account:{account}, level:{level}')
    		           
	清空:	=>	members.clear()
	
	合并:	=>	members = {'account1':14}, another={'a':2}	
				members.update(another)  # members = {'account1':14,'a':2}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值