今天晨诺星空继续给大家分享干货知识,福利来了,哈哈。如果你喜欢可以点个关注哦,男同胞关注了就是好哥们儿,哈哈,兄弟,有啥问题找我探讨,保你解决,没有什么是一杯酒解决不了的,如果有那就两杯,如果还是不行仍有办法,就再来一遍呗,哈哈,女同胞的话,除了带给你点编程的营养与干货,别的估计也只剩以身相许了,哈哈又调皮了
不开玩笑了,下面开始进入正题:今天 继续为大家分享下自己学习python3总结的语法笔记,专为python小白量身打造,如果你喜欢可以点个关注哦!如果你是刚入门的python小白的话,建议你从第一篇开始学起,这样才能效果更好一些,点击这里传送你到第一篇入门篇
下面开始python笔记讲解:
1.python中class类的创建与调用类实例中的变量与函数
class MyFirstPy:
formula = ['aaaa','bbbb','bbbb']
local_word = 'dddddddd'
def getWord(wo):
return print(wo)
# 创建 MyFirstPy类实例
test_wj = MyFirstPy()
# 打印这个实例中的变量
print(test_wj.local_word)
# 给local_logo 变量赋值
test_wj.local_word = 'I love beautiful girl'
# 打印赋值后的变量
打印输出结果:
dddddddd
I love beautiful girl
2.关于类中 __init()__函数的说明:
class MyFirstPy:
formula = ['aaaa','bbbb','bbbb']
local_word = 'dddddddd'
# __init__()是initialize(初始化)的缩写,这也就意味着即使我们在创建类实例的
# 时候不去引用init_()方法,其中的命令也会先被自动地去执行。就像java中类的构造器,
# Android中的onCreate()生命周期函数
def __init__(self):
self.local_word = 'ffffffff'
print(self.local_word)
打印输出结果: ffffffff
3.关于类的继承:
# 定义基类
class BasePy:
TAG = 'BasePy'
# 导入并继承BasePy基类
from Include.BasePy import BasePy
# 在类名后的括号内写入想要继承的基类的类名就表示继承于这个基类,类中的函数与变量都会继承,子类需要改变时可以重写父类的方法或者变量
class MyFirstPy(BasePy):
4.python3中的网络请求实现,基于urllib的实现
import urllib.request
if __name__ == '__main__':
# get请求
data = {}
data['wrod'] = '爱你'
url_parame = urllib.parse.urlencode(data)
url = "http://baidu.com?"
all_url = url + url_parame
response = urllib.request.urlopen(all_url).read()
record = response .decode('UTF-8')
print(record)
# post请求
url = 'http://baidu.com'
user_agent = 'Mozilla/4.0 (compatible; MSIE 5.5; Windows NT)'
values = {'wrod': '爱你'}
headers = {'User-Agent': user_agent}
data = urllib.parse.urlencode(values)
req = urllib.request.Request(url + '?' + data)
response = urllib.request.urlopen(req)
the_page = response.read()
print(the_page)
# print(the_page.decode('UTF8'))
5.关于使用pip这个包管理工具安装类库
首先讲下pip相关的知识与作用:无论是Windows、Linux还是Mac,都可以通过pip这个包管理工具来安装。
安装方法 :在命令行界面中运行如下命令,即可完成Requests库的安装:
pip3 install requests
如果运行上面命令后没有出现成功的提示,而是出现了如下提示已经安装的pip版本过低需要升级:
You are using pip version 9.0.3, however version 18.0 is available.
You should consider upgrading via the ‘python -m pip install --upgrade pip’ command.
只需要在命令里面运行提示的命令语句,进行更新即可
python -m pip install --upgrade pip
最后出现如下提示就是pip3安装成功了
Installing collected packages: pip
Found existing installation: pip 9.0.3
Uninstalling pip-9.0.3:
Successfully uninstalled pip-9.0.3
Successfully installed pip-18.0
6.关于使用requests类库实现网络请求:
get请求:
import requests
# 不带参数的get请求写写法
# r = requests.get('https://www.baidu.com/')
# 带有参数的get请求写法一
# r = requests.get('http://httpbin.org/get?name=germey&age=22')
# 带有参数的get请求写法二,用params这个参数就好了,比较规范的写法
data = { 'name': 'germey', 'age': 22}
r = requests.get("http://httpbin.org/get", params=data)
print(r.text)
# 可以发现,调用json()方法,如果是json结构就可以将返回结果是JSON格式的字符串转化为字典。但需要注意的书,如果返回结果不是JSON格式,便会出现解析错误,抛出json.decoder.JSONDecodeError异常。
print(r.json())
post请求:
# POST请求
data = {'name': 'germey', 'age': '22'}
r = requests.post("http://httpbin.org/post", data=data)
print(r.text)
print(type(r.status_code), r.status_code)
# 输出headers属性得到响应头
print(type(r.headers), r.headers)
# 输出cookies属性得到Cookies
print(type(r.cookies), r.cookies)
print(type(r.url), r.url)
# 输出history属性得到请求历史
print(type(r.history), r.history)
7.关于requests文件上传:
files = {'file': open('favicon.ico', 'rb')}
r = requests.post("http://httpbin.org/post", files=files)
print(r.text)
8.关于requests获取和设置Cookies:
# 使用urllib处理过Cookies,写法比较复杂,而有了requests,获取和设置Cookies只需一步即可完成。
r = requests.get("https://www.baidu.com")
print(r.cookies)
for key,value in r.cookies.items():
print(key + '=' + value)
9.关于Selenium:
Selenium功能介绍:Selenium是一个自动化测试工具,利用它我们可以驱动浏览器执行特定的动作,如点击、下拉等操作。对于一些JavaScript渲染的页面来说,这种抓取方式非常有效。
Selenium的安装:
电脑命令行里面敲如下命令语句,这里使用pip3安装该库
pip3 install selenium
看到如下提示就是安装成功了:
Installing collected packages: selenium
Successfully installed selenium-3.13.0