Python 基础语法完全指南:变量、类型、运算符与输入输出(零基础入门)

Python 基础语法完全指南:变量、类型、运算符与输入输出(零基础入门)
在这里插入图片描述

🔥草莓熊Lotso:个人主页
❄️个人专栏: 《C++知识分享》《Linux 入门到实践:零基础也能懂》
✨生活是默默的坚持,毅力是永久的享受!


🎬 博主简介:

在这里插入图片描述

文章目录


前言:

Python 以简洁易懂的语法成为编程入门的首选语言,但对于零基础小白来说,从 “计算器” 到 “能交互的程序”,需要先吃透核心基础语法。变量如何定义?数据类型有哪些区别?运算符怎么用才不踩坑?输入输出如何与用户交互?本文从最基础的常量表达式入手,层层拆解变量定义、数据类型、注释规范、输入输出和各类运算符,附大量实操案例和避坑指南,帮你快速搭建 Python 语法框架,轻松入门编程。

一. 常量与表达式:Python 当计算器使用

Python 最基础的用法就是作为计算器,支持常见算术运算,语法和日常数学算式高度一致。

1.1 核心算术运算符

支持 +(加)、-(减)、*(乘)、/(除)、()(括号),遵循 “先乘除后加减” 的运算优先级:

print(1+2-3)print(1+2*3)# Python里面整数/整数跟C++中不一样,整数除以整数也可以得到浮点数print(1+2/3)
在这里插入图片描述

1.2 关键注意点

  • 与 C/Java 不同2 / 3 结果是 0.666...(小数),而非整数截断;
  • 运算符与数字之间可加空格:推荐加 1 个,美观易读;
  • 表达式:形如 1 + 2 * 3 的算式称为表达式,运算结果为返回值;1、2、3 是字面值常量。

1.3 实际案例:求平均值

# 计算下面四个数的平均成绩print((67.5+73.5+54+86)/4)
在这里插入图片描述

二. 变量:保存数据的 “容器”

当需要存储中间结果(如计算方差时的平均值),就需要用到变量 —— 相当于内存中的 “房间”,可存放任意数据。

2.1 变量定义与使用

语法变量名 = 数据= 是赋值运算符(将右侧数据存入左侧变量):

# 以下代码在求四个数字的方差 average =(67.5+73.5+54+86)/4# ** 表示乘方 total =(67.5- average)**2+(73.5- average)**2+(54- average)**2+(86- average)**2# 除以 项数-1 result = total /3print(result)
在这里插入图片描述
  • average,total,result 均为变量
  • ** 表示乘方,**2 即求平方;
  • 变量可重复赋值,新值会覆盖旧值
a =10print(a)# 输出:10 a =20print(a)# 输出:20

变量可以视为是一块能够容纳数据的空间,这个空间往往对应到 “内存” 这样的硬件设备上。

在这里插入图片描述

2.2 变量命名规则

定义变量

# 正确的变量命名 a =10 a1 =10 a_09 =9# 错误的变量命名# 1a = 9# if = 20

硬性规则(必须遵守):

  • 由字母、数字、下划线构成,不能以数字开头;
  • 不能与 Python 关键字(如printif)重复;
  • 大小写敏感(numNum 是两个不同变量)。

软性规则(建议遵守):

  • 用有描述性的单词(如avg表示平均值,total表示总和);
  • 多单词用驼峰命名法(如personInfototalCount),首字母小写,后续单词首字母大写。
  • 还可以用person_infototal_count这样的写法
# 创建变量 a =10 b = a print(b)# 修改变量 a =20print(a)
在这里插入图片描述


这里我用的变量名还是 a,b这种是因为场景比较简单,也没啥需要特殊含义的表示。


三. 数据类型:给数据 “分类”

变量存储的数据有不同类型,类型决定了数据的存储方式和可执行的操作。Python 无需显式声明类型,赋值时自动确定(动态类型特性)
注意:和 C++/Java 等语言不同,Python变量的类型不需要显示指定,而是在赋值的时候确定的。

3.1 四大基础类型

(1)整数(int)

  • 表示整数,无范围上限(内存足够即可);
  • 用法a = 10、b = -5、c = 1000000000000。

(2)浮点数(float)

  • 表示小数,Python 中只有float(等价于其他语言的double,双精度,精确到小数点后 15 位);
  • 用法a = 0.5、b = 67.5、c = 3.1415926。

(3)字符串(str)

  • 表示文本,用单引号 ' ' 或双引号 " " 包裹(两者等价);
  • 核心操作
a ='hello' b ="world"print(len(a))# 输出:5(len()函数获取字符串长度)print(a + b)# 输出:helloworld(+表示字符串拼接)
  • 注意:字符串不能与整数 / 浮点数直接相加。

(4)布尔值(bool)

  • 表示 “真 / 假”,仅两个取值:True(真)、False(假);
  • 用法a = True、b = False,常用于逻辑判断

3.2类型相关操作:

  • 查看类型type(变量) 函数;
  • 类型转换int()、float()、str()、bool();
  • 动态类型特性:变量类型可在运行中改变(双刃剑,灵活但需谨慎)
    • 对于中小程序,可以大大的减少代码量(比如写一段代码就可以同时支持多个类型)
    • 对于大型程序,则提高了模块之间的交互成本(程序员 A 提供的代码难以被 B 理解)
a =10print(type(a)) b =0.5print(type(b))# 双引号和单引号都可以 c ='hello'print(type(c)) d ="hello"print(type(d)) e ='My name is "Lotso" 'print(type(e)) f =''' My 'name' is "Lotso" '''print(f)print(len(d)) a1 ='hello' a2 ='world'print(a1 + a2) c1 =True c2 =Falseprint(type(c1))print(type(c2))# 输出结果:<class'int'><class'float'><class'str'><class'str'><class'str'> My 'name'is"Lotso"5 helloworld <class'bool'><class'bool'>

四. 注释:给代码 “加说明”

注释是不执行的代码,用于解释程序逻辑,方便自己和他人理解。

4.1 两种注释语法

(1)单行注释

  • # 开头,注释整行:
# 计算4个数字的方差(单行注释) avg =(67.5+89.0+12.9+32.2)/4

(2)文档字符串(多行注释)

  • 用三引号 """ """''' ''' 包裹,支持多行:
""" 这是文档字符串(多行注释) 功能:计算4个分数的方差 步骤:1. 求平均值 2. 计算平方和 3. 求方差 """ total =(67.5- avg)**2+(89.0- avg)**2 result = total /3

4.2 注释规范

  • 内容准确:注释内容要和代码一致,匹配,并在代码修改时及时更新;
  • 篇幅合理:注释不要太精简也不要太冗长,点到为止;
  • 使用中文:国内开发首选中文注释;
  • 积极向上:避免负能量内容。

五. 输入输出:与用户交互

程序需要接收用户输入,再展示结果,核心用 input()(输入)和 print()(输出)函数。

  • 用户把信息传递给程序的过程,称为 “输入”。
  • 程序把结果展示给用户的过程,称为 “输出”。

输入输出最基本的方法就是控制台,用户通过控制台输入一些字符串,程序再通过控制台打印出一些字符串。

5.1 输出(print 函数)

  • 输出变量 / 常量print(变量名)print(常量)
  • 格式化输出(推荐 f-string,这个就和C++/Java不一样了):用 f'字符串{变量}' 内嵌变量 / 表达式:
a =10print(a) b ='hello'print(b) c =Trueprint(c) a =10# 希望使用 print 打印出 "a = 10" 这样的内容# 我们希望把数字和字符串混在一起打印print(f"a = {a}")print(f"a = {a +10}")
在这里插入图片描述

5.2 输入(input 函数)

  • 语法变量 = input('提示信息')
  • 注意input() 的返回值是字符串类型,需手动转换为其他类型才能进行算术运算:
# 通过控制台,来输入一个数据# num = input("Enter a number: ")# # 这个类型始终是一个str,如果需要计算就要转换# print(type(num))# print(f"num = {num}")# 输入两个数,计算他们相加的结果 a =input('Enter the First number: ') b =input('Enter the Second number: ')# a = int(a)# b = int(b)# print(f"a + b = {a + b}")print(f"a + b = {int(a)+int(b)}")

5.3 实操案例:求 4 个小数的平均值

#输入四个小数,求这四个小数的平均值 a =input('Enter the First number: ') b =input('Enter the Second number: ') c =input('Enter the Third number: ') d =input('Enter the Fourth number: ') a =float(a) b =float(b) c =float(c) d =float(d) avg =(a + b + c + d)/4print(f"The average is: {avg}")
在这里插入图片描述

六. 运算符:Python 的 “运算工具库”

除了算术运算符,Python 还有关系运算符、逻辑运算符、赋值运算符等,覆盖各类运算需求。

6.1 算术运算符(补充)

除了+,-,*,/ 基础运算,还有 3 个常用运算符:

  • %:求余数(不是百分数):print(7 % 2) → 输出 1;
  • **:求乘方:print(4 ** 2) → 输出 16,print(4 ** 0.5) → 输出 2.0(开平方);
  • //:取整除法(向下取整,舍弃小数):print(7 // 2) → 3,print(-7 // 2) → -4。
result =(1+2)*3print(f"result = {result}")# 注意一: 在 Python 中, 0 不能作为除数,否则会抛出异常# print(f"10 / 0 = {10 / 0}")# print(f"10 / 0.0 = {10 / 0.0}")# 报错信息# Traceback (most recent call last):# File "D:\Gitee.code\python-fundamentals-\PythonProject\2025--11--18\code10.py", line 5, in <module># print(f"10 / 0 = {10 / 0}")# ~~~^~~# ZeroDivisionError: division by zero# 注意二: 在 Python 中整数除以整数,结果可能是小数,而不会截断print(f"1 / 2 = {1/2}")# 注意三: % 表示求余数,余数不可能大于除数print(f"7 % 3 = {7%3}")# 注意四: ** 表示乘方语言,既能支持乘方,也能支持开方print(f"4 ** 2 = {4**2}")print(f"4 ** 0.5 = {4**0.5}")# 注意五: // 地板除法(取整除法),会针对计算的结果进行 “向下取整”print(f"7 // 2 = {7//2}")print(f"-7 // 2 = {-7//2}")
在这里插入图片描述


在这里插入图片描述

6.2 关系运算符(比较运算)

用于比较两个操作数之间的关系,返回布尔值(True/False):

运算符含义示例结果
<小于10 < 20True
<=小于等于10 <= 10True
>大于10 > 20False
>=大于等于10 >= 20False
==等于10 == 20False
!=不等于10 != 20True

注意

  • 字符串可比较(按字典序)'hello' < 'world' → True;
  • 支持连续小于或者大于这类写法 a < b < c
  • 浮点数不要用==判断相等(存在精度误差,在误差范围内就是True,False)
# a = 10# b = 20# a = 'hello'# b = 'world'# 中文也可以比较,但是没有意义# a = '你好'# b = '世界'# print(a < b)# print(a > b)# print(a <= b)# print(a >= b)# print(a == b)# print(a != b)print(0.1+0.2==0.3)print(0.1)print(0.2)print(0.1+0.2)print(0.3) a =0.1+0.2 b =0.3# 这个代码是看 a - b 差是否是一个非常小的数字,是否在误差范围之内# python是支持这种写法的,C++/Java都不行print(-0.000001<(a - b)<0.000001)
在这里插入图片描述
在这里插入图片描述


在这里插入图片描述

6.3 逻辑运算符(组合判断)

用于组合多个关系判断,返回布尔值

  • and:并且(一假则假):10 < 20 and 20 < 30 → True;
  • or:或者(一真则真):10 > 20 or 20 < 30 → True;
  • not:逻辑取反:not 10 < 20 → False。

短路求值(很重要,而且C++和Java都有这个)

  • and 左侧为 False 时,右侧不再执行;
  • or 左侧为 True 时,右侧不再执行:

实战代码:

a =10 b =20 c =30# 并且 (一假即为假)# print(a < b and b < c) # 简化print(a < b < c)print(a < b and b > c)# 或者 (一真则为真)print(a > b or b < c)print(a < b or b > c)print(a > b or b < c)# 逻辑取反print(not a < b)print(not a > b)# 短路规则# a > b 为假,后面的直接不计算,所以不会报错print(a > b and10/0==1)# a < b 为真,后面的直接不计算,所以不会报错print(a < b or10/0==1)在这里插入代码片 
在这里插入图片描述
在这里插入图片描述

6.4 赋值运算符

  • 基础赋值a = 10
  • 链式赋值a = b = 10(a 和 b 都赋值为 10);
  • 多元赋值a, b = 10, 20(快速交换变量:a, b = b, a);
  • 复合赋值a += 1(等价于a = a + 1),同理还有 -=、*=、/=、%=、**=、//=

注意
Python 没有 ++-- 自增 / 自减运算符,用 a += 1、a -= 1 替代。

实操代码:

# # 链式赋值# a = b = 20# # 多元赋值# a, b = 10,20 a =10 b =20# 实现交换a,b的逻辑# tmp = a# a = b# b = tmp# print(a,b)# 使用多元赋值,直接一步到位完成交换 a, b = b, a print(a,b)
在这里插入图片描述
a =10 a = a +1 a +=1# -=, *=, /=, **=, %=, //=# ++a# a++# --aprint(a)
在这里插入图片描述
在这里插入图片描述


在这里插入图片描述
  • 当然按除了上述之外,Python还有一些其他的运算符,比如身份运算符(is,is not),成员运算符(in,not in),位运算符(&|~^<<>>)等,大家感兴趣的可以自己先去了解一下。

七. 常见坑点总结与自测练习

7.1 常见坑点

  1. 除法结果默认是小数,需整数结果用 //;
  2. 字符串不能与数字直接相加,需先转换类型;
  3. 浮点数比较相等用 “误差范围”,而非 ==;
  4. input() 返回字符串,算术运算前必须转换类型;
  5. 变量命名不能以数字开头,不能与关键字重复。

7.2 自测练习

在这里插入图片描述

结尾:

🍓 我是草莓熊 Lotso!若这篇技术干货帮你打通了学习中的卡点: 👀 【关注】跟我一起深耕技术领域,从基础到进阶,见证每一次成长 ❤️ 【点赞】让优质内容被更多人看见,让知识传递更有力量 ⭐ 【收藏】把核心知识点、实战技巧存好,需要时直接查、随时用 💬 【评论】分享你的经验或疑问(比如曾踩过的技术坑?),一起交流避坑 🗳️ 【投票】用你的选择助力社区内容方向,告诉大家哪个技术点最该重点拆解 技术之路难免有困惑,但同行的人会让前进更有方向~愿我们都能在自己专注的领域里,一步步靠近心中的技术目标! 

结语:Python 基础语法的核心是 “简洁直观”,变量、类型、运算符、输入输出是搭建所有程序的基石。掌握这些内容后,你就能编写简单的计算程序、与用户交互的脚本,为后续学习循环、判断、函数打下基础。建议多动手实操案例,尤其是运算符的避坑场景(如浮点数比较、字符串拼接),通过练习巩固语法记忆。如果遇到报错,先查看变量类型、运算符使用是否正确,大部分入门问题都能快速解决。

✨把这些内容吃透超牛的!放松下吧✨ʕ˘ᴥ˘ʔづきらど

Read more

【数据结构和算法】链表的综合算法练习:1.返回倒数第k个节点 2.相交链表 3.回文链表

【数据结构和算法】链表的综合算法练习:1.返回倒数第k个节点 2.相交链表 3.回文链表

🔥小龙报:个人主页 🎬作者简介:C++研发,嵌入式,机器人等方向学习者 ❄️个人专栏:《C语言》《【初阶】数据结构与算法》 ✨ 永远相信美好的事情即将发生 文章目录 * 前言 * 一、返回倒数第k个节点 * 1.1题目 * 1.2 算法原理 * 1.3 代码 * 二、相交链表 * 2.1 题目 * 2.2 算法原理 * 2.3 代码 * 三、回文链表 * 3.1 题目 * 3.2 算法原理 * 3.3 代码 * 总结与每日励志 前言 链表作为数据结构的基础核心,是算法面试与嵌入式开发中高频考察的重点。

By Ne0inhk
马年“码”上发力:用Manacher“马拉车”算法,拉平最长回文难题

马年“码”上发力:用Manacher“马拉车”算法,拉平最长回文难题

💗博主介绍:计算机专业的一枚大学生 来自重庆 @燃于AC之乐✌专注于C++技术栈,算法,竞赛领域,技术学习和项目实战✌ 💗根据博主的学习进度更新(可能不及时) 💗后续更新主要内容:C语言,数据结构,C++、linux(系统编程和网络编程)、MySQL、Redis、QT、Python、Git、爬虫、数据可视化、小程序、AI大模型接入,C++实战项目与学习分享。 👇🏻 精彩专栏 推荐订阅👇🏻 点击进入🌌作者专栏🌌: 算法画解 ✅ C++ ✅ 🌟算法相关题目点击即可进入实操🌟 感兴趣的可以先收藏起来,请多多支持,还有大家有相关问题都可以给我留言咨询,希望希望共同交流心得,一起进步,你我陪伴,学习路上不孤单! 文章目录 * 前言 * Manacher(马拉车)算法 * 问题: * 1.相关概念引入

By Ne0inhk
Linux Socket编程核心:深入解析sockaddr数据结构族

Linux Socket编程核心:深入解析sockaddr数据结构族

Linux Socket编程核心:深入解析sockaddr数据结构族 * 引言:网络编程的基石 * 一、sockaddr:通用套接字地址结构 * 1.1 基本定义与设计哲学 * 1.2 为什么需要这样的设计? * 二、sockaddr家族成员详解 * 2.1 IPv4专用结构:sockaddr_in * 2.2 IPv6专用结构:sockaddr_in6 * 2.3 本地通信结构:sockaddr_un * 2.4 其他重要成员 * 三、字节序:网络编程的隐形陷阱 * 3.1 大端序 vs 小端序 * 3.2 常见错误示例 * 四、实际应用案例 * 4.1 创建TCP服务器

By Ne0inhk
基于大数据爬虫数据挖掘技术+Python的网络用户购物行为分析与可视化平台(源码+论文+PPT+部署文档教程等)

基于大数据爬虫数据挖掘技术+Python的网络用户购物行为分析与可视化平台(源码+论文+PPT+部署文档教程等)

#1024程序员节|征文#  博主介绍:ZEEKLOG毕设辅导第一人、全网粉丝50W+,ZEEKLOG特邀作者、博客专家、腾讯云社区合作讲师、ZEEKLOG新星计划导师、Java领域优质创作者,博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java技术领域和学生毕业项目实战,高校老师/讲师/同行前辈交流✌ 技术范围:SpringBoot、Vue、SSM、HLMT、Jsp、PHP、Nodejs、Python、爬虫、数据可视化、小程序、安卓app、大数据、物联网、机器学习等设计与开发。 主要内容:免费功能设计、开题报告、任务书、中期检查PPT、系统功能实现、代码编写、论文编写和辅导、论文降重、长期答辩答疑辅导、腾讯会议一对一专业讲解辅导答辩、模拟答辩演练、和理解代码逻辑思路。 🍅文末获取源码联系🍅 👇🏻 精彩专栏推荐订阅�

By Ne0inhk