首页 > 编程知识 正文

Python老男孩21期视频学习笔记

时间:2023-11-21 00:29:54 阅读:288124 作者:GCMB

Python老男孩21期视频是Python爬虫、Web框架、数据库等方面的全面知识总结,适合有一定编程经验的初学者或者Python爱好者进一步学习。本文将从以下几个方面进行详细的阐述。

一、爬虫基础

1、Python爬虫基础

<code>  # 爬虫基础代码
import requests
from bs4 import BeautifulSoup

url = "https://www.baidu.com"
content = requests.get(url).content
soup = BeautifulSoup(content, 'html.parser')
print(soup.title.string)
</code>

2、xpath与正则表达式的使用

<code>  # xpath与正则表达式代码
from lxml import etree

tree = etree.HTML(content)
result = tree.xpath('//div[@id="content_left"]/h3/a/text()')
print(result)
</code>

二、Web框架Django

1、Django框架的基本概念

<code>  # Django框架代码
from django.conf.urls import url
from django.http import HttpResponse

def hello(request):
    return HttpResponse("Hello World!")

urlpatterns = [
    url(r'^$', hello),
]</code>

2、Django框架中的模板和表单操作

<code>  # Django模板和表单代码
from django.shortcuts import render

def index(request):
    context = {}
    context['hello'] = 'Hello World!'
    return render(request, 'index.html', context)

class LoginForm(forms.Form):
    username = forms.CharField()
    password = forms.CharField(widget=forms.PasswordInput)

def login(request):
    if request.method == 'GET':
        form = LoginForm()
    else:
        form = LoginForm(request.POST)
        if form.is_valid():
            username = form.cleaned_data['username']
            password = form.cleaned_data['password']

    return render(request, 'login.html', {'form': form})</code>

三、数据库

1、SQLAlchemy使用

<code>  # SQLAlchemy使用代码
import sqlalchemy
from sqlalchemy import create_engine, Column, Integer, String
from sqlalchemy.orm import sessionmaker
from sqlalchemy.ext.declarative import declarative_base

engine = create_engine('mysql+pymysql://root:password@localhost:3306/test', echo=True)
Base = declarative_base()

class User(Base):
    __tablename__ = 'users'
    id = Column(Integer, primary_key=True)
    name = Column(String(20))
    password = Column(String(20))

Base.metadata.create_all(engine)
Session = sessionmaker(bind=engine)

session = Session()
user = User(name='Tom', password='123456')
session.add(user)
session.commit()</code>

2、Redis的使用

<code>  # Redis使用代码
import redis

pool = redis.ConnectionPool(host='localhost', port=6379, db=0)
r = redis.Redis(connection_pool=pool)
r.set('key', 'value')
print(r.get('key'))</code>

四、其他

1、Python的多线程使用

<code>  # Python多线程代码
import threading

def hello(name):
    print("Hello, %s" % name)

t = threading.Thread(target=hello, args=("Tom",))
t.start()
t.join()</code>

2、Python全局解释器锁(GIL)问题

Python的多线程是有GIL限制的,导致Python无法真正实现多线程并发,而是使用了类似于协程的方式进行伪并发。这是值得注意的问题。

通过学习Python老男孩21期视频,我们可以从爬虫基础、Django框架、数据库、多线程以及Python全局解释器锁等多个方面全面了解Python的应用,帮助我们更好的掌握Python编程。

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。