Python学习之旅(二) Python基础

在本章中,我们将深入探讨Python的基本概念,从变量和数据类型的介绍开始,到控制流的应用,再到函数的定义和使用,以及模块和包的导入。

2.1 变量和数据类型

在Python中,变量可以被视为数据的容器。Python是动态类型语言,你不需要事先声明变量的类型,Python会在你赋值时自动识别,这意味着同一个变量可以赋予不同类型的值。Python中有多种数据类型,下面是一些最基本的类型。

x = 4       # x 是整数
x = "Sally" # x 现在是字符串

注意事项:虽然Python允许动态类型,但最好保持变量类型的一致性,以避免混淆或错误。

2.1.1 数字类型:整数、浮点数

  • 整数:整数可以是正数、负数或零,不含小数部分。
  • 浮点数:浮点数是带有小数部分的数字。在Python中,浮点数也可以使用科学计数法表示。
#整数
x = 123

 #浮点数
y = 10.5
z = 2e2  # 表示2乘以10的2次方,即200.0

print(x, y, z)  # 输出: 123 10.5 200.0

注意事项:在进行浮点数运算时要小心精度问题,因为浮点数运算可能不会总是精确的。

2.1.2 字符串
字符串可以使用单引号或双引号创建。多行字符串可以用三引号定义。

str1 = 'Hello'
str2 = "World"
str3 = """This is
a multi-line
string."""

print(str1, str2)
print(str3)

注意事项:

  • 字符串一旦创建便不可改变(不可变)。
  • 可以使用+运算符连接字符串,但需注意效率问题。对于大量字符串拼接,考虑使用.join()方法。

2.1.3 布尔类型
布尔类型只有两个值:True和False,通常用于条件判断。

a = True
b = False

if a:
    print("a is true")

if not b:
    print("b is false")

2.1.4 列表
列表是有序且可变的元素集合。列表元素可以是不同的数据类型,并且可以通过索引访问。

fruits = ["apple", "banana", "cherry"]
print(fruits[1])  # 输出: banana

# 修改列表元素
fruits[1] = "blackberry"
print(fruits)  # 输出: ['apple', 'blackberry', 'cherry']

注意事项:

  • 列表索引从0开始。
  • 使用方法如.append(), .remove(), .pop()等可以修改列表。

2.1.5 元组
元组类似于列表,但一旦创建就不能修改(不可变)。元组通过圆括号表示。

coordinates = (10, 20, 30)
print(coordinates[1])  # 输出: 20

注意事项:尽管元组是不可变的,但如果元组包含可变对象(如列表),则这些可变对象可以被改变。

2.1.6 字典
字典是键值对的集合,且键必须是唯一的。字典是无序的集合。

person = {"name": "John", "age": 30, "city": "New York"}
print(person["name"])  # 输出: John

# 添加或修改键值对
person["age"] = 35
person["profession"] = "Engineer"

注意事项:

  • 字典的键必须是不可变类型,如字符串或元组。
  • 字典在Python 3.7及更高版本中是有序的,但最好不要依赖于键值对的顺序。

2.2 控制流

在Python中,控制流语句决定了代码的执行顺序。我们使用控制流语句来做决策、循环遍历数据、或者在满足特定条件时跳出循环。

2.2.1 if语句
if语句用于基于特定条件执行不同的代码块。Python依靠缩进来定义代码块的范围。

# 示例:根据年龄段打印不同的消息
age = 20

if age >= 18:
    print("You are an adult.")
elif age >= 13:
    print("You are a teenager.")
else:
    print("You are a child.")

注意事项:

  • elif和else部分是可选的,您可以根据需要使用它们。
  • 条件后面必须使用冒号:,代码块则通过缩进来定义。

2.2.2 for循环
for循环用于遍历序列(如列表、元组、字典、集合或字符串),执行每个元素的代码块。

# 遍历列表中的元素
fruits = ["apple", "banana", "cherry"]
for fruit in fruits:
    print(fruit)

注意事项:

  • for循环可以使用range()函数来生成一系列连续的数字。
  • 类似于if语句,for循环也依赖缩进来定义要重复执行的代码块。

2.2.3 while循环
while循环在给定条件为真时重复执行代码块。

# 计数到5
count = 1
while count <= 5:
    print(count)
    count += 1

注意事项:

  • 确保循环有一个终止条件,以避免无限循环。
  • 通过修改循环条件或使用break语句来控制循环的结束。

2.2.4 循环控制:break和continue

  • break用于立即退出循环,无论是否还有剩余的迭代。
  • continue跳过当前循环的剩余部分,直接开始下一次迭代。
# 使用break退出循环
for number in range(1, 10):
    if number == 5:
        break
    print(number)

# 使用continue跳过某些迭代
for number in range(1, 10):
    if number % 2 == 0:
        continue
    print(number)

2.3 函数

函数是一组组织好的,可重复使用的代码,用于执行单一或相关的任务。

2.3.1 定义函数
使用def关键字定义函数,后跟函数名和圆括号()。

# 定义一个简单的函数
def greet():
    print("Hello, Python learner!")

2.3.2 参数传递
函数可以通过参数接收输入值。

# 带参数的函数
def greet(name):
    print(f"Hello, {name}!")

2.3.3 返回值
使用return语句从函数返回值。

# 返回值的示例
def add(x, y):
    return x + y

2.3.4 匿名函数lambda
lambda函数是一种简单的、在一行内编写的函数,由关键字lambda开头。

# lambda函数示例
multiply = lambda a, b: a * b

2.4 模块和包

模块是Python代码库,一个包含Python函数、类和变量的文件。包是一种包含多个模块的方式。

2.4.1 导入模块
使用import语句导入模块,可以访问其功能。

# 导入模块示例
import math
print(math.sqrt(16))  # 输出: 4.0

2.4.2 安装和使用第三方包
使用pip安装第三方包。例如,安装请求库:

pip install requests

然后,您可以在代码中导入并使用这些包。

import requests
response = requests.get('https://www.example.com')

恭喜您完成了Python编程的基础学习!到目前为止,我们已经探索了变量和数据类型、控制流、函数,以及如何使用模块和包来增强我们的程序。这些构成了Python编程的核心,为您打下了坚实的基础。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值