会PHP → Python 极速入门(对照PHP思维,1小时上手,直接写Flask)
你已经会PHP,语法逻辑、Web流程、变量、循环、接口、路由全都懂,只需要记「语法差异+Python独有规则」,直接对标写。
一、环境(先搞定)
1. Python版本
装 Python3.10 / 3.11
安装勾选:Add Python to PATH
终端验证:
python --version
pip --version
2. 装Flask(对标PHP的Apache/Nginx+框架)
pip install flask
二、核心语法|PHP 一键对照 Python
1. 变量 & 输出
PHP
$name = "张三";
$age = 18;
echo $name;
Python
name = "张三"
age = 18
print(name)
关键点:
- 不用
$ - 变量直接写,弱类型和PHP一样
- 字符串单双引号都能用
2. 字符串拼接
PHP
$str = "年龄:" . $age;
Python
str = "年龄:" + str(age)
# 更推荐(对标php sprintf)
str = f"年龄:{age}"
3. 数组 / 列表(最常用)
PHP 索引数组
$arr = [1,2,3];
echo $arr[0];
Python List
arr = [1,2,3]
print(arr[0])
PHP 关联数组 = Python 字典
$data = ["name"=>"李四", "sex"=>"男"];
echo $data['name'];
data = {"name":"李四", "sex":"男"}
print(data["name"])
4. 条件判断 if
PHP
if($age >= 18){
echo "成年";
}else{
echo "未成年";
}
Python(靠缩进,不用大括号)
if age >= 18:
print("成年")
else:
print("未成年")
重点:冒号结尾 + 缩进4个空格,缩进错直接报错
5. 循环 for / while
PHP for
for($i=0;$i<5;$i++){
echo $i;
}
Python
for i in range(5):
print(i)
PHP foreach
foreach($arr as $v){}
for v in arr:
print(v)
6. 函数 function
PHP
function demo($a,$b){
return $a+$b;
}
Python
def demo(a,b):
return a + b
7. 注释
// 单行
/* 多行 */
# 单行
"""
多行注释
"""
三、PHP开发者最需要注意的 6个坑
- 无大括号,靠缩进,缩进混乱直接报错
- 字符串、列表、字典操作方法 和 PHP不一样
- 结尾不用分号(加了也不报错,但没必要)
- 布尔值:
True/False(PHP是true/false) - 空值:
None(PHP是null) - 导入文件:
import代替include/require
四、直接对标:PHP原生WEB → Flask极简demo
PHP 原生接口示例
<?php
header("Content-Type:application/json");
$name = $_GET['name'];
$res = ["code"=>200,"msg"=>"ok","data"=>$name];
echo json_encode($res);
?>
同等功能 Flask 代码(直接运行)
新建 app.py
from flask import Flask, request, jsonify
app = Flask(__name__)
# 路由 对标php访问地址
@app.route('/api/test', methods=["GET"])
def test():
# 接收get参数 对标 $_GET
name = request.args.get("name", "")
# 返回json 对标 json_encode
return jsonify({
"code": 200,
"msg": "ok",
"data": name
})
if __name__ == '__main__':
app.run(debug=True)
运行:
python app.py
访问:
http://127.0.0.1:5000/api/test?name=hello
完全就是你写PHP接口的逻辑,只是换了语法
五、下一步极速学习路线(适合PHPer)
- 先掌握:字典、列表、循环、函数
- 熟练:Flask 接收get/post参数、json返回、路由
- 对标PHP MySQL:学习
pymysql操作数据库 - 对标TP/Laravel框架:学会Flask蓝图、表单、中间件
我可以给你一份:
「PHP代码 → 等价Python/Flask代码 对照表」,包括数据库、POST请求、cookie、session、跨域,你直接对照抄写就能快速上手,要不要?
正文完