Python新手入门之四大基础语法速成指南
作者:流㶡
Python 是一门简洁、易读、功能强大的编程语言,被广泛应用于数据分析、人工智能、Web 开发、自动化脚本等领域。对于初学者而言,掌握 Python 的基础语法是迈向编程世界的第一步。
本文将围绕 Python 的四大基础语法元素 展开讲解:
- 元素的命名
- 基本数据类型
- 输出函数
print() - 输入函数
input()
通过通俗易懂的示例和详细解释,帮助你快速建立起对 Python 语法的基本认知。
1. 元素的命名
元素的命名是指给数据元素设置一个名称,以方便后期使用这些数据,主要包含变量的命名、函数的命名及类的命名,以这三种命名的规则是相同的。
命名规则
- 只能包含字母(a-z, A-Z)、数字(0-9)和下划线
_ - 不能以数字开头,变量名的中间不能有空格
- 区分大小写(
age和Age是不同的变量) - 不能使用 Python 关键字(如
if,for,while,def等) - 变量名尽量不要与Python的内置函数名相同
示例错误命名
3my_name = "张三" # 错误:以数字开头 my name = "李四" # 错误:包含空格 class = "班级" # 错误:class 是关键字
推荐命名风格
变量名:使用小写字母 + 下划线(snake_case)
student_name = "小明" age_in_years = 18
函数名:同样推荐 snake_casepython
def calculate_total(price, tax):
return price * (1 + tax)命名建议:见名知意,避免使用单个字母(如 a, b)作为变量名,除非在循环中临时使用。
2. 基本数据类型
Python 是一种动态类型语言,变量无需提前声明类型,系统会自动识别。以下是 Python 最常用的几种基本数据类型:
| 类型 | 描述 | 示例 |
|---|---|---|
int | 整数 | 42, -100, 0 |
float | 浮点数(小数) | 3.14, -0.5, 2.0 |
str | 字符串(文本) | "Hello", 'Python', "123" |
bool | 布尔值(真/假) | True, False |
类型查看与转换
x = 10
print(type(x)) # <class 'int'>
y = 3.14
print(type(y)) # <class 'float'>
z = "Hello"
print(type(z)) # <class 'str'>
# 类型转换
a = int("123") # 字符串转整数
b = float("3.14") # 字符串转浮点
c = str(100) # 数字转字符串注意:int("12.3") 会报错!只能转换纯数字字符串。
数值类型的数据可以经行运算,数据之间的运算符称为操作符,以下是Python中操作符的表示形式和描述:
| 操作符 | 描述 |
| + | 加号 |
| - | 减号 |
| * | 乘号 |
| / | 除号 |
| // | 整除,表示两个数值相除后的值不包含小数 |
| % | 求余数(整除后的余数) |
| ** | 求次幂(次方) |
pyhton中还有一些增强赋值操作符,是指将赋值语句中的等号和操作符结合在一起。常见的增强赋值操作符如下所示:
| 增强赋值操 | 描述(如果a=2) |
|---|---|
| += | a+=3等价于a=a+3,结果为5 |
| -= | a-=3等价于a=a-3,结果为-1 |
| *= | a*=3等价于a=a*3,结果为6 |
| /= | a/=3等价于a=a/3,结果为5 |
| //= | a//=3等价于a=a//3,结果为5 |
| %= | a%=3等价于a=a%3,结果为2 |
| **= | a**=3等价于a=a**3,结果为8 |
注意:
1.增强赋值操作符中间没有空格,操作符需要和等号连在一起
2.等号右边的优先级高于左边,例如计算a = a+3时,先计算a+3的值,再将值赋回
除了使用操作符对数值进行运算,Python语言还为数值类型提供了许多函数功能,例如 round() 函数、max() 函数和 min() 函数:
round()函数:四舍五入
round() 用于对浮点数进行四舍五入,可指定保留的小数位数。
基本语法:
round(number, ndigits)
number:要四舍五入的数字ndigits(可选):保留的小数位数,默认为 0(即取整)
示例:
print(round(3.14159)) # 输出:3 print(round(3.14159, 2)) # 输出:3.14 print(round(3.14159, 3)) # 输出:3.142 print(round(2.675, 2)) # 注意:输出可能是 2.67(因浮点精度问题)
注意:由于浮点数在计算机中的二进制表示存在精度限制,round() 在某些边界值(如 2.675)上可能不符合“数学直觉”,这是 IEEE 754 标准导致的正常现象。
max()函数:返回最大值
max() 用于从一组数值(或可比较的对象)中找出最大值。
基本用法:
# 传入多个参数
print(max(10, 20, 5)) # 输出:20
# 传入一个列表/元组
numbers = [3, 7, 2, 9, 1]
print(max(numbers)) # 输出:9
# 也可用于字符串(按字母顺序)
print(max("apple", "banana", "cherry")) # 输出:"cherry"min()函数:返回最小值
与 max() 相反,min() 返回最小值。
示例:
print(min(10, 20, 5)) # 输出:5
scores = [85, 92, 78, 96, 88]
print(min(scores)) # 输出:78
print(min("apple", "banana", "cherry")) # 输出:"apple"3.字符串类型
在 Python 中,字符串(str) 是一种不可变的序列类型,用于表示文本数据。无论是处理用户输入、读取文件内容,还是构建 Web 页面,字符串操作都是编程中最常见的任务之一。
字符串索引(Indexing)
字符串中的每个字符都有一个位置编号,称为索引(index)。Python 支持正向索引和反向索引两种方式。
正向索引
- 从左到右,从
0开始递增 - 第 1 个字符索引为
0,第 2 个为1,依此类推
反向索引
- 从右到左,从
-1开始递减 - 最后一个字符索引为
-1,倒数第二个为-2,依此类推
示例:字符串"Python"
| 字符 | P | y | t | h | o | n |
|---|---|---|---|---|---|---|
| 正向索引 | 0 | 1 | 2 | 3 | 4 | 5 |
| 反向索引 | -6 | -1 | -4 | -3 | -2 | -1 |
注意:反向索引中,n 是 -1,o 是 -2,以此类推。
代码演示:
s = "Python" print(s[0]) # 输出:P print(s[2]) # 输出:t print(s[-1]) # 输出:n print(s[-3]) # 输出:h # 尝试越界会报错 # print(s[10]) # IndexError: string index out of range
字符串是不可变的:你不能通过索引修改字符,例如 s[0] = 'J' 会报错。
字符串切片(Slicing)
切片用于提取字符串的一部分,返回一个新的子字符串。其语法非常灵活:
基本语法:
string[start:end:step]
start:起始索引(包含),默认为0end:结束索引(不包含),默认为字符串长度step:步长(每次跳过的字符数),默认为1
记住口诀:“包前不包后”
常见用法示例:
(1)基本切片
s = "Hello World" print(s[0:5]) # 输出:Hello print(s[6:11]) # 输出:World print(s[6:]) # 从索引6到末尾 → World print(s[:5]) # 从开头到索引5(不含)→ Hello
(2)使用负索引切片
s = "Python" print(s[-6:-3]) # 输出:Pyt(等价于 s[0:3]) print(s[-3:]) # 输出:hon(从倒数第3个到末尾)
(3)使用步长(step)
s = "abcdefgh" print(s[::2]) # 每隔1个字符取1个 → aceg print(s[1::2]) # 从索引1开始,每隔1个取1个 → bdfh print(s[::-1]) # 反转字符串!→ hgfedcba
反转字符串技巧:s[::-1] 是 Python 中最简洁的字符串反转方法!
切片不会越界
与索引不同,切片即使超出范围也不会报错,而是返回空字符串或有效部分:
s = "Hi" print(s[0:100]) # 输出:Hi(安全!) print(s[10:20]) # 输出:""(空字符串)
字符串连接
在实际编程中,经常需要将多个字符串组合成一个完整的信息,例如拼接用户姓名、构建 URL、生成日志消息等。
方法一:使用+操作符(最直观)
first = "Hello" second = "World" result = first + " " + second print(result) # 输出:Hello World
注意:+ 只能连接字符串。若要连接数字,需先转换为字符串:
name = "张三"
age = 25
# print("我叫" + name + ",今年" + age + "岁") # ❌ 报错!
print("我叫" + name + ",今年" + str(age) + "岁") # ✅ 正确方法二:使用join()方法(高效推荐!)
适用于将多个字符串拼接成一个,尤其适合列表或元组中的字符串。
words = ["Python", "is", "awesome"] sentence = " ".join(words) print(sentence) # 输出:Python is awesome # 自定义分隔符 url_parts = ["https", "www.example.com", "home"] full_url = "://".join(url_parts[:2]) + "/" + url_parts[2] # 或更简洁地: full_url = "/".join(["https:", "", "www.example.com", "home"]) print(full_url) # 输出:https://www.example.com/home
为什么推荐 join()?
当拼接大量字符串时,+ 会频繁创建新对象,效率低;而 join() 一次性完成拼接,性能更优。
字符串函数
Python 提供了一些全局内置函数,可用于字符串处理:
| 函数 | 说明 | 示例 |
|---|---|---|
len(s) | 返回字符串长度(字符个数) | len("Hello") → 5 |
str(x) | 将其他类型转换为字符串 | str(123) → "123" |
ord(c) | 返回字符的 Unicode 编码 | ord('A') → 65 |
chr(n) | 返回 Unicode 编码对应的字符 | chr(65) → 'A' |
示例演示:
text = "你好,Python!"
print(len(text)) # 输出:9(中文字符也占1位)
num = 42
print("数字是:" + str(num)) # 数字转字符串后拼接
print(ord('a')) # 97
print(chr(97)) # a注意:len() 计算的是字符数量,不是字节数(如 UTF-8 编码下中文占3字节,但 len("中") 仍为 1)。
字符串方法
字符串对象提供了大量方法(通过 . 调用),用于实现各种文本处理功能。以下是最常用的方法分类整理:
大小写转换
| 方法 | 作用 | 示例 |
|---|---|---|
.upper() | 转大写 | "hello".upper() → "HELLO" |
.lower() | 转小写 | "HELLO".lower() → "hello" |
.capitalize() | 首字母大写 | "hello".capitalize() → "Hello" |
.title() | 每个单词首字母大写 | "hello world".title() → "Hello World" |
查找与替换
| 方法 | 作用 | 示例 |
|---|---|---|
.find(sub) | 查找子串位置,未找到返回 -1 | "abc".find("b") → 1 |
.index(sub) | 类似 find,但未找到会报错 | "abc".index("d") → ValueError |
.replace(old, new) | 替换所有匹配项 | "apple".replace("p", "P") → "aPPle" |
.count(sub) | 统计子串出现次数 | "banana".count("a") → 3 |
建议:优先使用 .find() 避免异常;若确定存在再用 .index()。
去除空白字符
| 方法 | 作用 |
|---|---|
.strip() | 去除首尾空格(包括 \n, \t 等) |
.lstrip() | 去除左侧空白 |
.rstrip() | 去除右侧空白 |
s = " \t Hello World \n " print(repr(s.strip())) # 输出:'Hello World'
分割与合并
| 方法 | 说明 |
|---|---|
.split(sep) | 按分隔符拆分为列表(默认按空白) |
.rsplit(sep, maxsplit) | 从右边开始分割 |
.partition(sep) | 分成三部分:前、分隔符、后 |
data = "apple,banana,orange"
fruits = data.split(",")
print(fruits) # ['apple', 'banana', 'orange']
path = "/home/user/docs"
parts = path.split("/")
print(parts) # ['', 'home', 'user', 'docs']split() 是处理 CSV、日志、路径等结构化文本的利器!
4. 输出函数 print()
print() 是 Python 中最常用的输出函数,用于将信息显示在控制台或终端中。
基本用法
print("Hello World!")
print(123)
print(3.14)
print(True)多个参数输出
print("姓名:", "张三", "年龄:", 20)
# 输出:姓名: 张三 年龄: 20使用sep和end参数
print("A", "B", "C", sep="-") # 输出:A-B-C
print("Hello", end=" ") # 不换行,输出后加空格
print("World") # 输出:Hello World格式化输出(推荐)
name = "小红"
age = 18
print(f"我叫{name},今年{age}岁。") # f-string(Python 3.6+)
print("我叫{},今年{}岁。".format(name, age)) # format 方法f-string 是目前最推荐的方式,简洁且高效!
5. 输入函数 input()
input() 函数用于从用户获取输入内容,返回的是字符串类型。
name = input("请输入你的名字:")
print("你好," + name + "!")
age = input("请输入你的年龄:")
print("你明年将会是", int(age) + 1, "岁")注意事项
input()总是返回字符串,即使输入的是数字- 如果需要数值运算,必须进行类型转换
num1 = int(input("请输入第一个数字:"))
num2 = int(input("请输入第二个数字:"))
print("两数之和为:", num1 + num2)若输入非数字字符,int() 会抛出 ValueError 异常,后续课程将介绍如何处理异常。
项目案例:实现计算器
项目任务
实现用Python语言设计一个计算器代码程序,通过输入计算表达式即可返回计算结果。
项目实现代码
a = eval(input("请输入一个表达式:"))
print("输出结果为:", a)项目实现结果

在以上项目实现代码中,第一行代码用到了eval()函数。eval函数的使用形式如下:
eval(参数)
- 功能:将参数中的内容当作一行代码来运行,不包含引号,仅将字符申的内容当作代码运行。
- 参数:参数的数据类型为字符串类型。
在该项目实现的代码中,eral()中的参数为input("请输入一个表达式:"),程序先执行完input()部分后,需要等待用户输入信息。
当用户输入(34+12)*3+34*7并按Enter健后,由于imput)函数会默认将用户输入的信息存储为学将串类型信息,因此eval的参数为(34+12)*3+34*7”, 即eval((34+12)*3+34*7)。此时程序会将参数中的内客 (除去引号)当作一行代网来执行,等效为a=(34+12)43+3447,表达式的计算结果会保存在变量a中,最后通过print()输出a的内容。
以上就是Python新手入门之四大基础语法速成指南的详细内容,更多关于Python基础语法的资料请关注脚本之家其它相关文章!
