news 2026/4/2 23:41:02

二、python语法基础

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
二、python语法基础

一、前言与概述

前面了解了python安装以及环境的准备,下面是关于python语法基础的一个概要:

二、语法内容

(一)、基础语法

开始之前:注释代码

# 单行注释 """ 多行注释 """ ''' 多行注释 '''

1、变量与数据类型

变量定义

命名规则:a、变量不需要声明,但是使用前必须要赋值,不然不会被创建;

b、开头必须是字母或者下划线,其余部分是字母数字下划线,但是不能与关键字重名;

c、变量区分大小写,python3后变量名中支持中文;

变量赋值
# 变量定义举例 a = 1 _a =2.64 _a_ = 'hello world' _dump = False print(a, _a, _a_) print(_dump)

# 多变量赋值 b = d = "你好呀" enable, lilename, age = True, "lilena", 18 print(b, d) print(enable, lilename, age)

变量类型获取
# 多变量赋值 b = d = "你好呀" enable, lilename, age = True, "lilena", 18 print(b, d) print(enable, lilename, age) # 变量类型获取 tpb = type(b) tpn = type(tpb) print(tpb, tpn) print(type(age)) print(type(enable)) if type(b) == str: print("b is string")

数据类型与类型转换
数据类型:

数字类型(Number): bool(布尔)、int(整型数)、float(浮点数)、complex(复数由实部和虚部组成,形式为a+bj)

字符类型(String): 用单引号‘或者双引号“括起来;字符串中包含了\就是转译字符,但是前面加了r就不转译了;字符串可以用“+”串联起来,用“*”表示重复;字符串可以通过从前往后进行索引从0开始,若从后往前,则从-1开始;

# 字符串 s = "hello world" s0 = s+"你好世界!" s1 = "hello \nworld" s2 = r"hello \tworld" s3 = s*3 s4 = s[1] s5 = s[-3] print(s, s0, s1, s2, s3, s4, s5)

列表类型(list): 从前往后索引0->n,从后往前索引-1->-n;多元素索引[start:count],表示从索引start开始,往后索引count,count可以缺省;list*n:表示重复n遍; list1+list2:列表拼接;

# 列表 li = [10, 21, 8, 37, 49, 15] li0 = li[0:3] li1 = li[3:] li2 = li[:3] li3 = li0+li2 li4 = li1*2 print(li0, li1, li2, li3, li4)

元组(tuple):定义后不能修改,别的使用功能跟list一样;

集合(set): 定义存储数据会过滤掉重复数据

# set集合 setdata = {10, 21, 8, 37, 49, 15, 8} print(setdata) # 去重,且实际存储顺序与存入顺序不一致

字典(dict): [key:value],key值不能重复

# 字典 dictdata = {"name": "lilena", "age": 18, "sex": "female"} print(dictdata["name"], dictdata["age"], dictdata["sex"])
类型转换

例如:

# 字典 dictdata = {"name": "lilena", "age": 18, "sex": "female"} print(dictdata["name"], dictdata["age"], dictdata["sex"]) # 类型转换 strage = str(dictdata["age"]) print(strage) intage = int(strage) print(intage) bsex = bool(dictdata["sex"]) print(bsex)

2、关键字

python 语言中指定意义的字符,如下列举了:

'False', 'None', 'True', 'and', 'as', 'assert', 'async', 'await', 'break', 'class', 'continue', 'def', 'del', 'elif', 'else', 'except', 'finally', 'for', 'from', 'global', 'if', 'import', 'in', 'is', 'lambda', 'nonlocal', 'not', 'or', 'pass', 'raise', 'return', 'try', 'while', 'with', 'yield'

3、import

用于导入模块(module)、包(package)或模块中的指定对象;

import sys # 导入sys模块 import os # 导入os模块 print(os.path.dirname(__file__)) sys.path.append(os.path.dirname(__file__))

4、运算符

4.1、算术运算符:+,-,*,/ ,// ,%
4.2、比较运算符:== , >, < , !=, <=, >=
4.3、赋值运算符:= ,+=, -=, *=, /=, %=, //=
4.4、位运算符:&,|, ^, ~, <<, >>
4.5、逻辑运算符:and, or, not
4.6、成员运算符:in, not in
4.7、身份运算符:is,is not

5、流程控制

5.1、条件控制
if condition : <代码段> else: <代码段1> if condition1: <代码段2> elif condition2: <代码段3> else: <代码段4>

实例:

iinput = input("请输入:") if iinput == "1":#判断输入 print("输入1") elif iinput == "2": print("输入2") else: print("输入错误")

if 控制条件可以嵌套;

Python 3.10后增加的分支语句 match .... case

5.2、循环控制
(1)、for语句
# for 语句 for 变量名 in 可迭代对象: 循环体代码(缩进)

变量名:每次循环取可迭代对象的一个元素赋值给该变量;

可迭代对象:能依次返回元素的对象(如 [1,2,3]、"abc"、range(5) 等);

实例:

# 遍历列表 fruits = ["苹果", "香蕉", "橙子"] for fruit in fruits: print(f"我喜欢吃{fruit}") # 遍历字符串 for char in "Python": print(char) # 依次打印 P y t h o n # 遍历元组 nums = (10, 20, 30) for num in nums: print(num * 2) # 示例1:range(stop) → 0~stop-1 for i in range(5): print(i) # 0 1 2 3 4 # 示例2:range(start, stop) → start~stop-1 for i in range(2, 7): print(i) # 2 3 4 5 6 # 示例3:range(start, stop, step) → 步长 for i in range(1, 10, 2): print(i) # 1 3 5 7 9 # 示例4:反向遍历 for i in range(5, 0, -1): print(i) # 5 4 3 2 1
(2)、while语句

语法:

while 条件表达式: 循环体代码(缩进)

条件表达式:返回 True/False,为 True 时执行循环体,为 False 时退出循环;

缩进:Python 用缩进(4 个空格 / 制表符)标识循环体,缩进错误会报错;

无限循环:若条件永远为 True,会陷入无限循环(可按 Ctrl+C 终止,或用 break 退出);

# 打印 1~5 count = 1 while count <= 5: print(count) count += 1 # 必须更新条件变量,否则无限循环 # 接收用户输入,输入"q"退出 while True: msg = input("请输入内容(输入q退出):") if msg == "q": break # 强制退出循环 print(f"你输入了:{msg}")

6、代码块

通过缩进区分代码块,多行语句通过 '\'连接,在 [], {}, 或 () 中的多行语句,不需要使用反斜杠 \;

三、总结

这些基础语法是 Python 编程的基石,掌握后可应对简单的脚本编写、数据处理等任务。后续将基于这些知识点,进一步拓展面向对象编程、模块使用等进阶内容。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/3/19 17:20:29

2025动漫剧本推荐,无需成本轻松创作

2025动漫剧本推荐&#xff0c;无需成本轻松创作动漫作为一种深受大众喜爱的艺术形式&#xff0c;拥有着庞大的受众群体。而一个优秀的动漫剧本&#xff0c;则是动漫作品成功的关键。在2025年&#xff0c;有哪些值得推荐的动漫剧本创作工具呢&#xff1f;本文将为您介绍一款无需…

作者头像 李华
网站建设 2026/3/30 4:39:54

Linux 进程管理

在 Linux C/C 开发中&#xff0c;进程管理是系统编程的核心知识点之一。从父子进程的创建、进程的终止到僵尸进程的避免&#xff0c;每一个环节都影响着程序的稳定性。本文将从基础概念到实践代码&#xff0c;详细讲解 Linux 进程管理的关键技术。一、父子进程&#xff1a;写时…

作者头像 李华
网站建设 2026/3/31 3:37:59

JS函数语法(重点)

函数声明&#xff08;命名函数&#xff09;语法&#xff1a;function 函数名(参数) { 函数体; return 返回值 }// 求和函数 function sum(a, b) {return a b; // 返回值&#xff0c;无 return 则返回 undefined }// 调用函数 let result sum(1, 2); console.log(result); // …

作者头像 李华
网站建设 2026/3/31 6:06:35

SpringMVC的拦截器和过滤器有什么区别?执行顺序?

大家好&#xff0c;我是锋哥。今天分享关于【SpringMVC的拦截器和过滤器有什么区别&#xff1f;执行顺序&#xff1f;】面试题。希望对大家有帮助&#xff1b; SpringMVC的拦截器和过滤器有什么区别&#xff1f;执行顺序&#xff1f; 超硬核AI学习资料&#xff0c;现在永久免费…

作者头像 李华
网站建设 2026/4/2 17:26:58

Vue3 实时音频录制与转写 Composable 技术实现

Vue3 实时音频录制与转写 Composable 技术实现 前言 本文介绍如何基于 Vue3 Composition API 实现一个实时音频录制与转写的 Composable&#xff0c;涉及 Web Audio API、WebSocket 实时通信、音频格式转换等技术。 技术栈 Vue3 Composition API: 组合式函数封装MediaRecorder …

作者头像 李华
网站建设 2026/3/27 0:45:56

远程控制复现

一、漏洞测试 打开easy file sharing web server进入后修改端口点击go可以看到之后打开kali用searchsploit easy file sharing扫描漏洞利用对应的Python脚本攻击攻击完成&#xff0c;说明无法阻挡本身漏洞 二、kali生成被控端和启动主控端 先ifconfig查询kali的ip地址然后生成p…

作者头像 李华