当前位置: 首页 > news >正文

後端開發Python篇

書接上回:後端開發技術教學(五) 魔術方法、類、序列化-CSDN博客

必要資源:

trae中下載網址: TRAE - The Real AI Engineer

phpStudy 2018 : phpStudy - Windows 一键部署 PHP 开发环境 · 小皮出品

python解釋器:Welcome to Python.org


前言

        大家好,我是小楓。前幾期跟大家說完後端PHP的各種用法,這期我們就略略說一說python吧。接下來小編會介紹python的基礎代碼、條件指令、魔術方法等等。這些基本上跟PHP教的相差無幾,而且Web還是以PHP為主的,所以python我們就不詳細解析了。PHP大家可以稍微看回前篇,學一學哈。


目录

前言

一、配置要求

        1.1 插件安裝

        1.2  安裝python解釋器

二、基本語法

        2.1  可迭代對象

        2.2  輸出指令 (print)

        2.3  變量

        2.4  條件指令  (if & elif & else)

        2.5  循環指令  (while & for)

        2.6  range

        2.7  函數

        三、模塊

        3.1  內置模塊

        3.2  自定義模塊

        3.3  第三方模塊

        3.3.1 requests 模塊

        3.3.2  whois 模塊

四、類與對象

        4.1  魔術方法

五、小結


一、配置要求

        大家用pycharm也行哈,我這邊以trae作為示範而已。

        1.1 插件安裝

         在trae上安裝python插件。

        1.2  安裝python解釋器

=> 下面兩個勾選不了也沒關係,後面再操作就行了。

=> 下面兩個勾選不了也沒關係,後面再操作就行了。

=> 按install安裝就好了

=> 創建後綴為(.py)的文件就可以開始了

二、基本語法

        python的最大特色就是強制縮進,即連續指令開頭必須tab鍵開路

        2.1  可迭代對象

- string         字符串

- integer       整數

- float           有小數點的數

- bool           True / False (必須大寫開頭)

- list[ ]           類似索引數組,往後可以修改

- tuple( )       元組。類似索引數組,往後不可以修改

- dict{ }         字典。關聯數組

*數組在上一篇已經說過了,這邊就不多說了

        2.2  輸出指令 (print)

print(integer)
print("字符串")
print(變量)

        2.3  變量

aaa=123
bbb="hi"
ccc=True
#要以英文字開頭,變量名只能包括數字、英文字母、下划綫

        2.4  條件指令  (if & elif & else)

if 判斷條件:
​	代碼塊1        #強制縮進
elif 判斷條件:     #即elseif
​	代碼塊2
else:
​	代碼塊3

        2.5  循環指令  (while & for)

b=1
while (b<=10):	#當條件滿足時,一直執行
​	print(b)
​	b+=1	# b=b+1
#每print完一次b,b都會加1(遞增)::即print 1-10
//for 變量 in 可迭代對象(str/bool/list/tuple/int...)for i in range(1,11):	#range(1,11)  左閉右開   即1-10
​	print(i)	//把in後所有的數值都輸出一次出來,直到輸出完::輸出:
1
2
3
4
5
6
7
8
9
10for v in "abcdefg":	
​	print(v)    //每次只輸出一個字符::輸出:
a
b
c
d
e
f
g

        2.6  range()

range(1,11)	
=> from 1-10range(1,11,3)
=> 間隔3 -> 1,4,7,10range(5)
=> range(0,5)=> from 0-4

        2.7  自定義函數

def 函數名(參數列表):
​	函數體(縮進語句)
​	return 返回值    // 用於返回結果給調用者函數名()    //調用函數def people(name):return namepeople(xiaofong)
::輸出:xiaofong

        三、模塊

把 常用函數/類/變量/代碼塊 寫進.py為後綠綴的文件裡,要用時再引用該文件。不用重複敲代碼,方便編碼。

        3.1  內置模塊

        python自帶的模塊,例如os模塊、sys模塊、random模塊、time模塊等等。

import math    //引用模塊a=math.sqrt(4)    //使用方法 => 對象名.方法名/屬性名
#即根號4print(a)
::輸出:2.0

        3.2  自定義模塊

        字面意思,自己寫的模塊。

創建模塊:myadd1.py    //建議模塊名(英文+數字),不然容易重名
def add2(a,b):    //2數相加的函數
​	return a+b調用:
import myadd1
print(myadd1.add2(1,2))    //在myadd1模塊中,引用add2函數

        3.3  第三方模塊

其他大神編寫的高級模塊(用於數據分析,網絡請求等等),需透過pip工具安裝。常用模塊有requests模塊、pandas模塊、numpy模塊等等。

//在cmd中操作
pip install <模塊名>or
pip install <模塊名> -i <任何一個鏡像源>(http://mirrors.aliyun.com/pypi/simple/)pip list | findstr "requests" 
=> 查看是否已安裝requests模塊(例子)

        3.3.1 requests 模塊

        專門用於網絡請求(POST、GET)

方法一
import requestsresponse=requests.post("http://www.baidu.com")   //對百度網站發送POST請求
print(response.text)    //查看POST請求中的內容
print(response.status_code)    //查看連接是否成功方法二
import requests as r
=> 讓 r = requests方法三
from requests import get 
// 從模塊中導入指定函數,引用函數時就不用[對象名.函數名]了,直接引用就可以了get()

        3.3.2  whois 模塊

        whois數據庫專門收集域名、IP地址、公開的註冊數據庫等等的數據,所以whois模塊也特別用於信息收集。

pip install python-whois    //安裝whois模塊import whoiswhois_info=whois.whois("http://www.baidu.com/")
print(whois_info)

四、類與對象

        類和對象在上一篇文章已經說過了,大家可以稍微看一下哈。

class 類名:屬性(變量)/方法(函數)class Student:內容p=Student("xiaofong",18)    //創建對象p.函數名() => 調用函數
p.屬性名() => 調用變量

        4.1  魔術方法

1. __init__(self,參數,參數):

        => __construct()

2. __del__(self)

        => __destruct()

3. __getstate__

        => 在對象被序列化pickle.dump() 時調用

4. __setstate__

        => 在對象被反序列化pickle.load() 時調用

5. __reduce__

        => 在__getstate__ 被調用前調用

class Student:def __init__(self,name,age):    //參數中一定寫要selfself.name=nameself.age=agereturn nameStudent("xiaofong",18)    //創建對象時自動執行__init__
::輸出:xiaofong

五、小結

        後端python就跟大家說得差不多了,因為Web後端是主要以PHP為主的,所以這裡不會跟大家說大詳細,略略帶過就算了。

   大家只需要記住它們的功能和運作邏輯就可以了,實操可以讓AI幫忙寫代碼,具體的之前已經說過了,這裡就不多說了。接下來我們會開始研究數據庫mysql以及開始分析漏洞挖掘了哈。大家敬請期待了。


Trae AI寫代碼:後端開發技術教學(一) [附2025最新可用 phpstudy2018下載鏈接] -CSDN博客

類與魔術方法:後端開發技術教學(五) 魔術方法、類、序列化-CSDN博客

http://www.lryc.cn/news/622167.html

相关文章:

  • windows下hashcat使用gpu破解execl打开密码
  • C++ 优选算法 力扣 1004. 最大连续1的个数 II 滑动窗口 (同向双指针)优化 每日一题 详细题解
  • C#WPF实战出真汁06--【系统设置】--餐桌类型设置
  • Transformer实战(4)——从零开始构建Transformer
  • 如何解决pip安装报错ModuleNotFoundError: No module named ‘fairseq’问题
  • AI优质信息源汇总:含X账号,Newsletter,播客,App
  • [优选算法专题二滑动窗口——长度最小的子数组]
  • 杭州网站建设,外贸独立站搭建攻略分享
  • 应急救援智能接处警系统——科技赋能应急,筑牢安全防线
  • 如何使用亚马逊云科技EC2服务部署语音转写系统
  • almalinux9.6系统:kubeadm部署kubernetes-1.33版本环境-三节点
  • NPM 、 NPX
  • 深度学习实战115-基于Qwen3的多智能体协同深度数据分析:架构、流程与实现
  • “大模型”技术专栏 | 浅谈基于 Kubernetes 的 LLM 分布式推理框架架构:概览
  • Linux网络配置:聚合链路与网桥实战
  • 【Android -- 多线程】Handler 消息机制
  • 基于MIMO的MATLAB预编码
  • 公司的服务器怎么个事,服务器是什么东西
  • 数据结构初阶(15)排序算法—交换排序(快速排序)(动图演示)
  • [ CSS 前端 ] 网页内容的修饰
  • sqlsever的sql转postgresql的sql的方言差异
  • SQL182 连续两次作答试卷的最大时间窗
  • 优化网络ROI:专线复用,上云出网一“线”牵!
  • OSCP - Proving Grounds - CVE-2024-25180
  • 技术解读 | 搭建NL2SQL系统需要大模型么?
  • python re正则模块
  • Redis 缓存和 Redis 分布式锁
  • Spring中存在两个相同的Bean是否会报错?
  • PyTorch 训练神经网络模型,并集成到springboot项目中
  • STM32L051同时处理Alarm A和Alarm B中断