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

Python学习日志(二):基础语法

Python基础语法一、变量变量是存储数据的容器通过赋值语句创建name Alice # 字符串变量 age 25 # 整数变量 height 1.68 # 浮点数变量 is_student True # 布尔变量注意事项变量名区分大小写Age和age不同命名规范使用蛇形命名法如user_name动态类型变量类型由赋值自动确定避免使用Python关键字如print、for作变量名二、数据类型类型示例特性整型(int)42无大小限制浮点(float)3.14存在精度误差字符串(str)Python支持切片Py[0:2]布尔(bool)True/False逻辑运算基础列表(list)[1, a, True]可修改有序元组(tuple)(1, b)不可修改字典(dict){name: Bob}键值对映射集合(set){1, 2, 3}元素唯一无序类型转换函数int(10) → 10 str(3.14) → 3.14 list(abc) → [a,b,c]三、判断语句# 基础if-elif-else结构 score 85 if score 90: print(优秀) elif score 60: print(及格) # 输出此结果 else: print(不及格) # 三元表达式 status 通过 if score 60 else 未通过注意事项使用判断相等is判断对象标识空值判断if not list:优于if len(list)0:避免连续比较歧义1 x 10合法但x y z需谨慎四、循环结构1. while循环count 0 while count 5: print(f计数: {count}) count 1 # 必须更新循环变量!2. for循环# 遍历序列 fruits [apple, banana, cherry] for fruit in fruits: print(fruit) # 使用range for i in range(3): # 输出0,1,2 print(i) # 字典遍历 person {name: Tom, age: 20} for key, value in person.items(): print(f{key}: {value})循环控制break立即终止循环continue跳过当前迭代else循环正常结束时执行非break退出五、函数# 定义函数 def calculate_area(width, height1): # height为默认参数 计算矩形面积 # 文档字符串 return width * height # 调用函数 print(calculate_area(5, 4)) # 输出20 print(calculate_area(3)) # 使用默认height1, 输出3 # 匿名函数 square lambda x: x**2 print(square(4)) # 输出16注意事项参数传递不可变对象传值可变对象传引用避免默认参数可变陷阱# 错误示范 def add_item(item, lst[]): lst.append(item) return lst # 正确做法 def add_item(item, lstNone): lst lst or [] lst.append(item) return lst六、语法注意事项缩进规则使用4个空格非Tab作为缩进层级同一代码块必须严格对齐# 错误示例 if True: print(Hello) # IndentationError引号使用字符串可用单引号或双引号多行字符串用三引号或特殊运算符整除//如7//2→3幂运算**如2**3→8成员检测in如a in apple→True空值表示使用None非NULL或null七、综合实例学生成绩分析器def analyze_grades(grades): 分析成绩数据 if not grades: return 无有效数据 # 计算统计值 avg sum(grades) / len(grades) max_score max(grades) min_score min(grades) # 评级分布 levels {A: 0, B: 0, C: 0, D: 0} for score in grades: if score 90: levels[A] 1 elif score 80: levels[B] 1 elif score 70: levels[C] 1 else: levels[D] 1 # 返回结果字典 return { average: round(avg, 2), max: max_score, min: min_score, distribution: levels } # 测试数据 scores [92, 85, 76, 88, 69, 95, 62] result analyze_grades(scores) # 结果输出 print(f平均分: {result[average]}) print(f最高分: {result[max]}, 最低分: {result[min]}) print(等级分布:) for level, count in result[distribution].items(): print(f{level}级: {count}人)输出结果平均分: 81.0 最高分: 95, 最低分: 62 等级分布: A级: 2人 B级: 2人 C级: 2人 D级: 1人八、最佳实践总结变量使用描述性名称避免单字符除循环变量类型操作前验证数据类型如用type()或isinstance()循环优先选用for循环避免无限while函数遵循单一职责原则函数长度不超过50行异常处理使用try-except捕获潜在错误try: num int(input(输入数字: )) except ValueError: print(非法输入!)

相关文章:

Python学习日志(二):基础语法

Python基础语法 一、变量 变量是存储数据的容器,通过赋值语句创建: name "Alice" # 字符串变量 age 25 # 整数变量 height 1.68 # 浮点数变量 is_student True # 布尔变量注意事项: 变量名区分大小写&#xff1a…...

网盘直链下载助手:八大网盘一键解析,告别限速烦恼的终极解决方案

网盘直链下载助手:八大网盘一键解析,告别限速烦恼的终极解决方案 【免费下载链接】Online-disk-direct-link-download-assistant 一个基于 JavaScript 的网盘文件下载地址获取工具。基于【网盘直链下载助手】修改 ,支持 百度网盘 / 阿里云盘 …...

《深度解析QClaw同步架构:为什么它比所有云盘都快10倍》

绝大多数人对跨设备同步的理解还停留在文件传输的层面,认为只要能把一个文件从A电脑传到B电脑就叫同步。但真正的工作同步远不止于此,它应该包括你未完成的任务队列、上下文记忆、技能配置、甚至是你和AI助手之间形成的独特工作默契。QClaw 2.0带来的本地P2P状态快照机制,第…...

DearPyGui内置的‘开发者工具箱’有多强?手把手教你用Style Editor和Metrics打造专属UI

DearPyGui开发者工具箱实战:用Style Editor和Metrics打造高效UI工作流 第一次在项目中使用DearPyGui时,我被它流畅的GPU渲染效果所吸引,但真正让我决定长期投入的,却是它那些藏在角落里的开发者工具。记得当时为了调整一个按钮的颜…...

免费数据恢复软件推荐:Wise Data Recovery 6.2.0 激活版使用指南

原文作者:程序视点 转载自:https://cloud.tencent.com/developer/article/2550182 数据恢复需求:为什么需要专业软件? 在日常使用电脑时,误删文件、清空回收站、格式化磁盘等情况时有发生。此时,专业的数…...

AUV增量PID轨迹跟踪与USV路径跟随的MATLAB仿真

AUV 增量PID轨迹跟踪 水下机器人无人船无人艇 USV路径跟随 MATLAB仿真AUV 圆轨迹跟踪增量 PID 控制系统——功能说明书(基于 MATLAB 仿真框架)一、系统定位本仿真包为“Infante”型 AUV 提供一套可即插即用的圆轨迹跟踪解决方案。核心算法采用“增量式…...

JavaScript 递归调用栈深度解析与层级遍历陷阱详解

本文深入剖析 javascript 中递归函数的执行栈行为,结合二叉树遍历实例,揭示因边界检查顺序不当导致的空指针异常、输出截断问题,并对比说明递归实现的“伪层级遍历”与真正 bfs 层序遍历的本质区别。 本文深入剖析 javascript 中递归函数…...

c++怎么在读取文件时自动跳过所有UTF-8编码的非法字符【实战】

UTF-8非法字节序列导致std::invalid_argument或乱码,应使用std::vector以char流方式读取并手动跳过非法序列,而非直接用std::string接收后解析。读取文件时遇到 std::invalid_argument 或乱码,大概率是 UTF-8 非法字节序列标准 C 的 std::ifs…...

List.Sort与LINQ排序哪种更高效

在C#开发里头,针对集合操作排序这件事儿,那可是极为常见的。List.Sort方法,还有LINQ给出的OrderBy以及OrderByDescending方法,它们都能够轻易地达成排序任务。然而呢,它们在底层所遵循的机制,就连使用的场景…...

C语言属于什么软件

c语言不属于任何软件! C语言是一门通用计算机编程语言,应用广泛。C语言的设计目标是提供一种能以简易的方式编译、处理低级存储器、产生少量的机器码以及不需要任何运行环境支持便能运行的编程语言。 特有特点 C语言是一个有结构化程序设计、具有变量作用…...

MCP协议如何重塑前端开发工作流

前言 2026年,AI与前端开发的融合进入新阶段。MCP(Model Context Protocol)协议作为Anthropic推出的开放标准,正在彻底改变我们构建AI驱动应用的方式。本文将深入探讨MCP在前端工程中的实战应用。 正文 一、MCP协议核心概念 MCP协议…...

React 20与Server Components生态:2026年全新实践

前言 2026年,React生态迎来重大更新。React 20正式版发布,Server Components从实验性功能走向生产环境。本文将深入解析新特性,并分享大型项目迁移实战经验。 正文 一、React 20核心更新 1. Server Components正式版 零Bundle Size组件直接访…...

从精确到共识:一种关于数据架构的经济学解释

数据库系统的核心张力,或许可以用一个日常场景来理解。当你走进一家小店,账单显示102.3元,商家说"收您102元",双方欣然成交。这0.3元的抹零不是数学错误,而是一种精明的成本计算——它节省了找零的时间、对账…...

解放双手!碧蓝航线全自动助手Alas:7x24小时智能托管你的舰队

解放双手!碧蓝航线全自动助手Alas:7x24小时智能托管你的舰队 【免费下载链接】AzurLaneAutoScript Azur Lane bot (CN/EN/JP/TW) 碧蓝航线脚本 | 无缝委托科研,全自动大世界 项目地址: https://gitcode.com/gh_mirrors/az/AzurLaneAutoScri…...

孩子 KET 口语总丢分?这份指南帮你搞定

很多家长陪孩子练 KET 口语时,最怕遇到的场面就是“挤牙膏”。你问:“What’s your favourite school subject?”孩子答:“English.”你等了半天,没了。这种回答,在 KET 评分标准里是很难冲刺高分的。其实&#xff0c…...

从精确到共识

从精确到共识 2026-04-14 一 数据库系统诞生至今的半个多世纪里,“精确”一直是它不可动摇的基石。关系代数、ACID事务、范式理论——所有这些核心概念都建立在一个共同的假设之上:查询的结果必须是确定的、可重复的、绝对正确的。当你询问“账户余额是多…...

保姆级教程:用ENVI 5.6处理Landsat 8影像,5步搞定郑州市土地利用分类图

零基础实战:5步速成Landsat 8土地利用分类图(ENVI 5.6全流程) 刚拿到遥感影像数据时,很多新手会被复杂的预处理步骤吓退。去年带学生做毕业设计时,我发现用ENVI处理一景Landsat 8影像其实可以很高效——只要抓住5个关键…...

响应式编程-Flux 背压机制与操作符链式调用源码解析

1. 响应式编程与背压机制基础 第一次接触响应式编程时,我被它的"数据流"概念深深吸引。想象一下,数据就像水管中的水流,而背压机制就是水管上的阀门控制——当水压过大时自动调节流量,防止爆管。这种设计完美解决了异步…...

Python重点知识总结(含爬虫)

一、Python 语言基础语言定位 解释型、面向对象、简洁易读,适合Web安全、爬虫、自动化,只用Python3(Python2已停止维护)。基础语法注释:# 单行; / """ """ 多行变量&#x…...

基于yolov26+pyqt5的石榴成熟度检测系统python源码+pytorch模型+评估指标曲线+精美GUI界面

基于 PyQt5 和 YOLO26 的目标检测桌面应用程序,支持图片、视频和摄像头实时检测。 功能特性 图片检测:支持图片检测视频检测:支持视频文件实时检测与播放摄像头检测:支持实时摄像头视频流检测模型切换:支持加载不同的 …...

客服机器人支持快捷键操作吗?Agent 系统后台可自定义热键,客服效率能提升多少?

在数字化客服时代,企业每天面对海量咨询,如何让客服团队从重复劳动中解放出来,同时实现秒级响应和精准转化,成为竞争关键。许多企业主和客服负责人都在问:客服机器人支持快捷键操作吗?Agent 系统后台可自定…...

记一次跨境电商客服系统的搭建与差评处理复盘

做跨境独立站第一年,被一个差评整破防了。美国客户买的露营灯,留言说亮度虚标,给了一星。我当时盯着后台看了半小时,不知道怎么回,怕英文写不利索把事情搞得更糟。后来问了一圈做跨境的朋友,慢慢摸出点门道…...

Python与爬虫

爬虫是一种Python编写的,按照既定的规则,抓取网站数据的脚本程序,其优点在于,语言简洁,工作效率高,适合重复性工作1.先导入模块,首先打开wiindows命令行,输入pip install requests下…...

【多模态大模型落地自动驾驶实战白皮书】:20年智驾专家首曝3大失败场景、5类传感器融合陷阱与实时推理优化黄金公式

第一章:多模态大模型在自动驾驶中的应用 2026奇点智能技术大会(https://ml-summit.org) 多模态大模型正深刻重塑自动驾驶系统的感知、推理与决策范式。传统 pipeline 架构依赖独立模块分别处理摄像头、激光雷达、毫米波雷达及高精地图数据,而多模态大模…...

【紧急预警】HuggingFace最新v4.45更新已默认禁用legacy cross-attention kernel——你的多模态微调Pipeline可能已在静默崩溃!

第一章:多模态大模型中的注意力机制 2026奇点智能技术大会(https://ml-summit.org) 多模态大模型的核心挑战在于如何对齐与融合来自图像、文本、音频等异构模态的语义表征,而注意力机制正是实现跨模态动态关联的关键引擎。它不再局限于单一模态内的局部…...

Windows 下部署与配置 Hermes Agent 完全指南:AI 智能体、OpenRouter、LLM、本地大模型、WSL2、自动化、自进化 AI、Ollama、Claude 3.5、GPT-4

本文内容深度融合相关以下技术相关词的汇,放在文章开头以便于您快速阅读以及学习: 平台:Windows、WSL2核心项目:Hermes AgentAI 能力:AI 智能体(AI Agent)、自进化 AI、自动化任务、代码解释器、…...

.json标记转换.txt格式小工具

当使用自建数据库对YOLO等模型进行训练时,有时候会碰到无法直接使用.json文件进行训练的问题,而labelme有时候标出来是.json格式。这里提供一个工具脚本,在训练前先运行一遍可以有效解决该问题。该脚本原本用于YOLO-v8-seg模型训练&#xff0…...

数组增删改查及双指针法

刷题日记:LeetCode 27 移除元素 —— 双指针法真的太香了!今天死磕了 LeetCode 第 27 题「移除元素」,从一开始的暴力暴力,到最后秒懂双指针法,真的有一种“打通任督二脉”的感觉!把这一题的学习心得写成一…...

第一范式是关系型数据库设计的最基本要求,核心规则是**关系模式的所有属性都是不可再分的原子数据项**

第一范式是关系型数据库设计的最基本要求,核心规则是关系模式的所有属性都是不可再分的原子数据项,即表中每一列的取值都是单一值,不存在组合值或多值情况。 1NF的典型问题 以教材中的FIRST关系表为例(供应商-零件供应关系&#x…...

函数依赖是关系数据库中属性之间的一种约束关系,表示当属性集合X的值确定时

函数依赖是关系数据库中属性之间的一种约束关系,表示当属性集合X的值确定时,属性集合Y的值也被唯一确定,记作X→Y,其中X称为决定因素。 函数依赖的类型: 完全函数依赖:若X→Y,且X的任何真子集都…...