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

Django全栈班v1.04 Python基础语法 20250912 下午

第一次与Python的亲密接触

让我们从最经典的程序开始:向世界问好

print("Hello, World! 🌍")
print("你好,世界!")
print("欢迎来到编程的魔法世界!✨")

输出效果:

image.png

关于Python入门程序的冷笑话

其他语言的Hello World,需要导入库,定义类,写main函数…

Python的Hello World,一行代码搞定!

这就是为什么Python被称为“人生苦短,我用Python!”

Java程序员:写了20行代码才输出Hello World

Python程序员:一行代码搞定,剩下的19行时间去喝咖啡~

趣味小游戏:Python自我介绍

print("🐍 大家好,我是Python!")
print("📅 我出生于1991年,今年已经"+str(2025-1991)+"岁了!")
print("👨‍💻 我的爸爸是Guido van Rossum(人称‘仁慈的独裁者’)")
print("🎯 我的座右铭是:简单胜于复杂!")
print("🌟 我擅长的技能:")
print("    - 网站开发:Django,Flask,FastAPI")
print("    - 数据分析:Numpy,Pandas")
print("    - 人工智能:Tensorflow,PyTorch")
print("    - 自动化脚本:Selinum,requests")
print("    - 游戏开发:Pygame")
print("😊 很高兴认识你,让我们一起编程吧!")
print()
print("💡 小贴士:我的名字来自英国喜剧团体'Monty Python'")
print("🐍 不是因为蟒蛇哟!虽然我的logo是蛇...")

输出结果:

image.png

Python特性1简洁明了

Python风格:简洁优雅

name = "小明"
age = 18
print(f"我叫{name},今年{age}岁")

对比Java可能需要:

public class HelloWorld{public static void main(String[] args){String name = "小明";int age = 18;System.out.println("我叫" + name + ", 今年" + age + "岁");}
}

image.png

Python特性2无需分号

# Python 不需要分号结尾
print("第一行")
print("第二行")
print("第三行")# 当然,你非要加分号也可以,但是会被其他程序员嘲笑
print("我是强迫症患者");
print("我就是要加分号");

输出结果:

image.png

Python特性3动态类型

变量可以随时改变类型,就像变色龙一样!

# 数字类型
magic_variable = 33
print(f"我现在是数字:{magic_variable}")# 改为字符串
magic_variable = "你好"
print(f"我现在是字符串:{magic_variable}")# 改为列表
magic_variable = [1,2,3]
print(f"我现在是列表:{magic_variable}")# 改为布尔值
magic_variable = True
print(f"我现在是布尔值:{magic_variable}")

输出结果:

image.png

其他语言:你敢这样做?编译器分分钟教你做人!!!

Python:随便变,我都支持!!!

练习:个性化问候

任务:创建一个个性化的问候程序

要求:

  • 输出你的姓名
  • 输出你的年龄
  • 输出你的爱好
  • 使用emoji让输出更有趣
name = "张大鹏"
age = 33
hobies = ["编程", "读书", "看电影"]print(f"👨‍💻 大家好,我是 {name},今年{age}岁了。")
print(f"😊 我的爱好是:{hobies}")

输出结果:

image.png

缩进是Python的灵魂

Python用缩进来表示代码块,这就像代码的层次结构。

程序员笑话:

为什么Python程序员的代码总是很整齐?

因为,如果不整齐,程序就跑不了!!!

其他语言:缩进是为了美观

Python:缩进是为了生存

C语言程序员:我的大括号哪去了?

Python:谁需要大括号?缩进就够了

缩进游戏:代码金字塔

让我们用缩进创建一个代码金字塔:

print("欢迎来到缩进金字塔!")
print("这是一个关于层次的故事...")level = 1
if level >= 1:print("第一层:我学会了基础缩进")print("这里是第一层的世界")if level >= 2:print("第二层:我掌握了嵌套缩进")print("层次感越来越强了")if level >= 3:print("第三层:我是缩进大师")print("代码结构清晰可见")if level >= 4:print("第四层:缩进艺术的巅峰")print("代码像诗一样优美")print("金字塔建造完成")

输出结果:

image.png

缩进规则讲解

规则说明示例推荐指数
4个空格Python官方推荐print("Hello")⭐⭐⭐⭐⭐
2个空格节省空间print("Hello")⭐⭐⭐
Tab键简单快捷print("Hello")⭐⭐
混合使用绝对禁止!print("Hello")❌❌❌

你写完一行代码以后,如果换行需要缩进,那么你按一下tab键就可以了。

缩进错误1:缩进不一致

错误示例:

if True:print("第一行用4个空格")print("第二行用2个空格") # IndentationError

正确示例:

if True:print("第一行用4个空格")print("第二行用4个空格")

缩进错误2:忘记缩进

错误示例:

if True:
print("忘记缩进了") # IndentationError

正确示例:

if True:print("记得缩进")

缩进错误3:多余的缩进

错误示例:

print("这是顶级代码")print("不需要缩进")  # IndentationError

正确示例:

print("顶级代码")
print("同样是顶级代码")

练习:修复缩进错误

任务:修复下面代码的缩进错误

def broken_code():
print("这是一个有问题的函数")
x = 5
if x > 0:
print("x是正数")
if x > 10:
print("x大于10")
else:
print("x小于等于10")
else:
print("x不是正数")

修复后代码:

def broken_code():print("这是一个有问题的函数")x = 5if x > 0:print("x是正数")if x > 10:print("x大于10")else:print("x小于等于10")else:print("x不是正数")

什么是变量

变量就像是程序的记忆盒子,可以存储各种信息。

程序员笑话:变量就像女朋友

  • 你给她起个名字(只有你们两个能理解的比较亲密的称呼)
  • 她会记住你告诉她的事情
  • 她的心情(值)会变化
  • 如果你忘记她的名字,程序就崩了
  • 不同的是,变量不会因为你有其他变量而生气

变量的基本用法

# 字符串变量
name = "小明"
# 整数变量
age = 18
# 浮点数变量
height = 175.5
# 布尔变量
is_student = Trueprint(f"姓名:{name}")
print(f"年龄:{age}")
print(f"身高:{height}")
print(f"是否为学生:{is_student}")# 变量的值可以修改
age = 19 # 过完生日了
print(f"新的年龄:{age}")

image.png

Python变量命名规则

规则说明正确示例错误示例
字母开头必须以字母或下划线开头name, _private2name, #name
字母数字下划线只能包含字母、数字、下划线user_name, age2user-name, age!
区分大小写Name和name是不同变量Name, name-
不能是关键字不能使用Python保留字my_classclass, if

Python变量命名风格对比

蛇形命名法:变量有有意义的英文单词组成,单词之间用下划线进行连接

蛇形命名法是Python推荐的命名法

user_name = "张三"
total_score = 95
is_logged_in = True

驼峰命名法:变量有有意义的单词组成,每个单词首字母大小。

如果第一个单词的首字母大写了,叫做大驼峰命名法。如果第一个单词的首字母没有大写,叫做小驼峰命名法。

userName = "张三"
totalScore = 95
isLoggedIn = True

不要使用无无意义的单个字母作为变量:

a = "张三"

不要拼接没有意义的数字:

userName123 = "张三"

不要使用双下划线拼接,双下划线容易混淆:

user__name = "张三"

命名游戏:变量名命名大师

# 🎯 变量命名大师挑战
print("🎮 欢迎来到变量命名大师挑战!")
print("🎯 为以下场景选择最佳的变量名")scenarios = [{"场景": "存储用户的电子邮箱地址","选项": ["email", "e", "user_email", "mail_address"],"最佳": "user_email"},{"场景": "记录学生的考试成绩","选项": ["score", "s", "exam_score", "result"],"最佳": "exam_score"},{"场景": "判断用户是否为VIP会员","选项": ["vip", "is_vip", "vip_status", "member"],"最佳": "is_vip"}
]for i, scenario in enumerate(scenarios, 1):print(f"\n📋 场景 {i}{scenario['场景']}")print("选项:", " | ".join(scenario['选项']))print(f"💡 最佳答案:{scenario['最佳']}")print(f"🎯 原因:清晰、具体、符合Python命名规范")

文章转载自:

http://pUDtu1EF.qcrhb.cn
http://VLnmMfjf.qcrhb.cn
http://r8HnqtCS.qcrhb.cn
http://ME50PUWK.qcrhb.cn
http://VBimt6Qm.qcrhb.cn
http://GTWE83WX.qcrhb.cn
http://OokGK9CP.qcrhb.cn
http://LG5dJ1Oc.qcrhb.cn
http://zNw8DPSH.qcrhb.cn
http://bv5DFBwX.qcrhb.cn
http://1iE6hhD5.qcrhb.cn
http://7tUSNYCx.qcrhb.cn
http://5nxnWQt3.qcrhb.cn
http://1MBP63ac.qcrhb.cn
http://pLH6vn1q.qcrhb.cn
http://mtElR2EC.qcrhb.cn
http://2tlom0EN.qcrhb.cn
http://SzgODfOx.qcrhb.cn
http://fAVaJUEv.qcrhb.cn
http://BXx4EqgW.qcrhb.cn
http://Z19R22k8.qcrhb.cn
http://VvZI7ATz.qcrhb.cn
http://IpfukbGI.qcrhb.cn
http://nALUOjmY.qcrhb.cn
http://FhDkxa63.qcrhb.cn
http://1uswWUxj.qcrhb.cn
http://n7OiQgXM.qcrhb.cn
http://anBMgZ0u.qcrhb.cn
http://Exe3uK3V.qcrhb.cn
http://inAAL9BO.qcrhb.cn
http://www.dtcms.com/a/380236.html

相关文章:

  • uniapp多端打包样式处理
  • Unity学习----【进阶】TextMeshPro学习(一)--基础知识点
  • Echarts雷达图根据数值确定颜色
  • etcd备份脚本
  • 基于 OpenCV 与 SIFT 算法的指纹识别系统实现:从匹配到可视化
  • uniapp微信小程序保存海报到手机相册canvas
  • 3227. 字符串元音游戏
  • 【python实用小脚本-215】[硬件互联] 按钮×Python梦幻联动|用20行代码实现“一键录音”自动化改造实录(建议收藏)
  • 分布式专题——10.2 ShardingSphere-JDBC分库分表实战与讲解
  • 机器学习-数据标注
  • Leetcode:动态规划算法
  • 鸿蒙项目篇-22-项目功能结构说明-写子页面和导航页面
  • 深入解析 Kubernetes 中的 Service 资源:为应用提供稳定的网络访问
  • JAiRouter 0.8.0 发布:Docker 全自动化交付 + 多架构镜像,一键上线不是梦
  • 自如入局二手房,对居住服务行业的一次范式重构
  • BLE6.0信道探测,如何重构物联网设备的距离感知逻辑?
  • 【OC】单例模式
  • 【数据结构】LRU Cache
  • 阅读翻译Discovering Modern C++之5.2.3 A `const`-Clean View Example
  • MUSIC, Maximum Likelihood, and Cramer-Rao Bound
  • APT32F0042F6P6 32位微控制器(MCU)单片机 APT爱普特微电子 芯片核心解析
  • react3面试题
  • LeetCode 344.反转字符串
  • 【C++】list模拟实现全解析
  • C++动态规划算法:斐波那契数列模型
  • 第六章:AI进阶之------python的变量与赋值语句(二)
  • 传统项目管理流程有哪些?深度分析
  • 导购电商平台的服务治理体系构建:熔断、限流与降级机制实现
  • Axios 中设置请求头
  • 十四十五. 图论