【Python基础语法】

Python基础语法精要

Python基础语法

基础语法

变量和数据类型 - 程序的基础构建块
运算符 - 进行各种计算和比较
流程控制 - 让程序具备逻辑判断能力
循环 - 自动化重复任务
函数 - 代码复用和模块化的关键

核心概念讲解

1. 标识符与命名规范

在Python中,标识符就是我们给变量、函数、类等起的名字。需要遵循一定的规则:

# 合法的标识符
my_variable = 10
_user_name = "张三"
count2 = 20

# 不合法的标识符
2variable = 10  # 错误:不能以数字开头
my-variable = 10 # 错误:不能包含连字符

命名法则

  • 使用下划线命名法:my_variable_name
  • 或者驼峰命名法:myVariableName
  • 避开Python关键词:if, for, while
  • 不能用数字开头

2. 代码块与缩进 - Python的特色

Python最具特色的就是使用缩进来表示代码块,这让代码看起来非常整洁:

# 正确的缩进
if True:
    print("这属于if语句块")
    print("这也在if语句块内")
print("这已经在if语句块外了")

# 错误的缩进会导致错误
if True:
print("这会报错!")  # IndentationError

3. 六大数据类型详解

数字类型
# 整数
age = 25
# 浮点数
price = 19.99
# 复数(科学计算用)
complex_num = 3 + 4j

print(f"年龄: {age}, 价格: {price}")
字符串 - 文本的容器
# 三种创建方式
name1 = '张三'
name2 = "李四"
description = """这是一个
多行字符串"""

# 字符串操作
greeting = "Hello" + " " + "World"  # 拼接
print(greeting[0])  # 输出: H (索引从0开始)
print(greeting[0:5]) # 输出: Hello (切片)

# 转义字符
text = "他说:\"你好!\""  # 输出: 他说:"你好!"
列表 - 灵活的数据集合
# 创建列表
fruits = ["苹果", "香蕉", "橙子", 123, True]

# 访问元素
print(fruits[0])    # 输出: 苹果
print(fruits[-1])   # 输出: True (倒数第一个)

# 修改列表
fruits[1] = "葡萄"    # 修改
fruits.append("西瓜")  # 添加
del fruits[3]        # 删除

print(fruits)  # 输出: ['苹果', '葡萄', '橙子', True, '西瓜']
字典 - 键值对存储
# 学生信息字典
student = {
    "姓名": "王小明",
    "年龄": 18,
    "成绩": 95.5,
    "课程": ["数学", "英语", "编程"]
}

# 访问数据
print(student["姓名"])        # 输出: 王小明
print(student.get("年龄"))    # 输出: 18

# 修改字典
student["年龄"] = 19         # 修改
student["班级"] = "高三(1)班" # 新增
del student["成绩"]          # 删除

print(student)

4. 运算符全解

# 算术运算符
a, b = 10, 3
print(a + b)   # 13
print(a - b)   # 7
print(a * b)   # 30
print(a / b)   # 3.333...
print(a // b)  # 3 (整除)
print(a % b)   # 1 (取余)
print(a ** b)  # 1000 (幂运算)

# 比较运算符
print(a > b)   # True
print(a == b)  # False
print(a != b)  # True

# 逻辑运算符
x, y = True, False
print(x and y)  # False
print(x or y)   # True
print(not x)    # False

5. 条件控制 - 让程序会思考

# 简单的if-else
score = 85
if score >= 90:
    print("优秀")
elif score >= 80:
    print("良好")
elif score >= 60:
    print("及格")
else:
    print("不及格")

# 逻辑运算符组合
age = 25
has_license = True

if age >= 18 and has_license:
    print("可以开车")
else:
    print("不能开车")

6. 循环语句 - 自动化重复任务

while循环
# 计算1-100的和
total = 0
i = 1
while i <= 100:
    total += i
    i += 1
print(f"1-100的和是: {total}")  # 输出: 5050
#打印九九乘法表
i = 1
while i < 10:
    j = 1
    while j <= i:# 修改条件:j <= i 而非 j < 10
        print(f"{j}*{i}={i*j}",end='\t') # 使用制表符对齐
        j+=1
    print("")# 换行
    i+=1
# break示例 - 遇到5就停止
count = 1
while count <= 10:
    if count == 5:
        break
    print(count)
    count += 1
for循环
# 遍历列表
fruits = ["苹果", "香蕉", "橙子"]
for fruit in fruits:
    print(f"我喜欢吃{fruit}")

# 使用range
for i in range(5):        # 0到4
    print(i)

for i in range(1, 6):     # 1到5
    print(i)

for i in range(0, 10, 2): # 0,2,4,6,8
    print(i)

7. 函数 - 代码复用

# 定义函数
def greet(name, time="早上"):
    """向某人问好"""
    return f"{time}好,{name}!"

# 调用函数
print(greet("张三"))              # 位置参数
print(greet(time="下午", name="李四"))  # 关键字参数

# 计算阶乘的函数
def factorial(n):
    """计算n的阶乘"""
    result = 1
    for i in range(1, n + 1):
        result *= i
    return result

print(f"5的阶乘是: {factorial(5)}")  # 输出: 120

实战案例

案例1:BMI计算器

def calculate_bmi(weight, height):
    """计算BMI并给出健康建议"""
    bmi = weight / (height ** 2)
    
    if bmi < 18.5:
        category = "偏瘦"
    elif bmi < 24:
        category = "正常"
    elif bmi < 28:
        category = "超重"
    else:
        category = "肥胖"
    
    return bmi, category

# 使用示例
my_weight = 70    # 公斤
my_height = 1.75  # 米

bmi, advice = calculate_bmi(my_weight, my_height)
print(f"您的BMI是: {bmi:.2f}")
print(f"健康状况: {advice}")

案例2:猜数字游戏

import random

def guess_number():
    """猜数字小游戏"""
    target = random.randint(1, 100)
    attempts = 0
    
    print("欢迎来到猜数字游戏!")
    print("我已经想了一个1-100之间的数字,来猜猜看吧!")
    
    while True:
        try:
            guess = int(input("请输入你的猜测: "))
            attempts += 1
            
            if guess < target:
                print("猜小了,再试试!")
            elif guess > target:
                print("猜大了,再试试!")
            else:
                print(f"恭喜你!第{attempts}次猜对了!")
                break
        except ValueError:
            print("请输入有效的数字!")

# 运行游戏
guess_number()

常见问题

** Python中单引号和双引号有区别吗?**
没有本质区别,都可以用来创建字符串。建议在项目中选择一种并保持统一。

为什么我的代码报"IndentationError"?
这是因为缩进不正确。确保同一代码块的缩进空格数相同,建议使用4个空格。

如何判断变量是什么类型?
使用type()函数:print(type(变量名))

break和continue有什么区别?
break会完全退出循环,continue只是跳过当前循环的剩余代码,继续下一次循环。

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值