Python基础速通
Python是一门强大的编程语言,广泛应用于数据分析、主动化、网络安全等多个范畴。本文将系统地介绍Python的基础知识,包罗环境配置、基础语法、数据结构、函数、面向对象编程以及常见的文件操作和异常处理技巧。
Python 环境安装
在开始编写Python代码之前,首先必要设置好开发环境:
安装Python
Python 3.x 是目前的主流版本,推荐安装 Python 3.10 版本。可以在 Python官网 下载并安装对应版本。
配置IDE
推荐使用 PyCharm 作为Python开发的IDE,它提供了丰富的开发工具和功能,如代码主动补全、调试等,帮助你高效编程。
Python 基础语法
print() 函数
print() 是Python最常用的输出函数,用于将数据打印到控制台。例如:
格式化字符串
在Python中,格式化字符串是将变量的值以特定格式嵌入到字符串中的一种方法。格式化字符串提供了一种便捷的方式,可以用来输出更易读、更具表现力的文本,特殊是在处理数字、日期、百分比、对齐等需求时。
Python 提供了几种方式来格式化字符串:% 操作符、str.format() 方法和 f-string。下面我们将依次介绍这些方式。
1. 百分号 (%) 格式化
这是Python最早期的格式化字符串方法,类似于C语言的格式化。虽然这种方法在Python 3.x中已经不推荐使用,但它仍旧广泛存在于旧代码中。
- name = "Alice"
- age = 30
- print("My name is %s and I am %d years old." % (name, age))
复制代码 输出:
- My name is Alice and I am 30 years old.
复制代码
- %s 用于格式化字符串。
- %d 用于格式化整数。
- %f 用于格式化浮点数(默认保存6位小数)。
你还可以指定宽度和精度:
- pi = 3.14159
- print("Pi is approximately: %.2f" % pi)
复制代码 输出:
- Pi is approximately: 3.14
复制代码 2. str.format() 方法
str.format() 是Python 2.7和3.0及以上版本中引入的格式化方法,它提供了比百分号格式化更多的灵活性和可读性。
- name = "Alice"
- age = 30
- print("My name is {} and I am {} years old.".format(name, age))
复制代码 输出:
- My name is Alice and I am 30 years old.
复制代码 你可以使用位置参数和关键字参数来指定输出的顺序:
- print("My name is {0} and I am {1} years old. {0} loves Python.".format(name, age))
复制代码 输出:
- My name is Alice and I am 30 years old.
- Alice loves Python.
复制代码
- {0} 表示第一个参数(name)。
- {1} 表示第二个参数(age)。
你还可以通过关键字参数指定格式:
- print("My name is {name} and I am {age} years old.".format(name="Alice", age=30))
复制代码 输出:
- My name is Alice and I am 30 years old.
复制代码 str.format() 还支持高级格式化功能,如指定宽度、填充字符、对齐方式等:
- # 设置宽度和对齐方式
- print("{:<10} | {:>10}".format("Name", "Age")) # 左对齐和右对齐
- print("{:^10} | {:^10}".format("Name", "Age")) # 居中对齐
复制代码 输出:
3. f-string(格式化字符串字面量)
f-string 是Python 3.6及以上版本新增的格式化字符串方法,它是最简洁、最强大、最易读的方式之一。通过在字符串前加 f 或 F,可以将变量直接嵌入字符串中,并支持格式化表达式。
- name = "Alice"
- age = 30
- print(f"My name is {name} and I am {age} years old.")
复制代码 输出:
- My name is Alice and I am 30 years old.
复制代码 f-string 还允许在花括号内执行表达式和格式化操作。例如:
- pi = 3.14159
- print(f"Pi is approximately: {pi:.2f}")
复制代码 输出:
- Pi is approximately: 3.14
复制代码 在这里,{pi:.2f} 格式化 pi 为保存两位小数的浮点数。
高级格式化选项
- 数字格式化:通过:符号可以指定数字的显示格式。
- :d:十进制整数
- :f:浮点数
- :.2f:浮动点数保存两位小数
- :x:十六进制整数(小写字母)
- :X:十六进制整数(大写字母)
- num = 255
- print(f"Decimal: {num}, Hex: {num:x}, Hex (Upper): {num:X}")
复制代码 输出:
- Decimal: 255, Hex: ff, Hex (Upper): FF
复制代码
- 填充与对齐:可以指定字段宽度并界说填充字符。默认情况下,数字右对齐,字符串左对齐:
- name = "Alice"
- age = 30
- print(f"{name:<10} | {age:>5}")
复制代码 输出:
在这里,< 表示左对齐,> 表示右对齐。你也可以使用 ^ 来进行居中对齐。
- 精度控制:f-string 支持精度控制,特殊实用于浮点数格式化:
- pi = 3.141592653589793
- print(f"Pi to 4 decimal places: {pi:.4f}")
复制代码 输出:
- Pi to 4 decimal places: 3.1416
复制代码
- 日期和时间格式化:可以使用 datetime 模块结合 f-string 格式化日期和时间:
- from datetime import datetime
- now = datetime.now()
- print(f"Current date and time: {now:%Y-%m-%d %H:%M:%S}")
复制代码 输出:
- Current date and time: 2024-11-26 15:30:45
复制代码 总结
- 百分号格式化:最早期的格式化方法,虽然功能简单,但不再推荐用于新项目。
- str.format():较为灵活,支持位置参数、关键字参数和格式控制,实用于Python 2和3。
- f-string:最现代、最简洁的格式化方式,推荐用于Python 3.6及以上版本,支持嵌入表达式并具有高效的性能。
注释
单行注释
单行注释使用 # 符号,后面跟随注释的内容。# 后的内容直到行尾,都会被视为注释部分。
单行注释常用于对某行代码进行表明、标记大概临时禁用某行代码。也可以放在代码行的尾部,用于表明该行代码的作用。例如:
多行注释
多行注释在Python中没有专门的语法形式,但可以使用三引号 ''' 或 """ 来包裹注释内容。这种方法通常用于对一段代码进行详细的注释,大概在函数、类、模块中添加文档字符串(docstring)。例如:
- """
- 这是一个多行注释
- 你可以在这里写任何内容,注释会跨越多行
- 比如,解释函数、类或代码段的功能
- """
复制代码 这种形式的注释通常用于包罗多行表明文本,方便描述复杂的算法、功能说明等内容。
文档字符串(Docstring)
文档字符串(docstring)是一种特殊的多行注释,通常用于描述模块、类、函数的功能。它们放置在模块、类、函数的第一行,而且通常被表明器用来天生文档。文档字符串使用三引号困绕,而且通常保存在代码中作为文档天生工具的输入。
例如:
- def add(a, b):
- """
- 这是一个加法函数
- :param a: 第一个加数
- :param b: 第二个加数
- :return: 返回两个数的和
- """
- return a + b
复制代码 此处的多行字符串是函数的文档字符串。它描述了函数的功能、参数和返回值,通常用于天生主动文档。
变量和命名规范
在Python中,变量是用来存储数据的命名空间。为确保代码清楚、易读且不与Python的内置关键字冲突,变量命名必要遵照肯定的规则和最佳实践。
变量命名规则
- 变量名只能由字母、数字和下划线 _ 组成,且不能以数字开头。
- 区分巨细写。
- 不能使用Python关键字:Python的保存关键字(如 if、else、for、import 等)不能作为变量名。
常用的命名风格
在Python中,常用的命名风格有两种:驼峰命名法(Camel Case)和下划线命名法(Snake Case)。选择合适的命名风格,可以提高代码的可读性和一致性。
- 驼峰命名法(Camel Case):每个单词的首字母大写,且没有空格或下划线,常用于类名和某些函数或变量名。
- 下划线命名法(Snake Case):使用小写字母和下划线 _ 分隔单词,常用于函数名和变量名。
import 导入模块
Python的代码通常按功能构造成模块,每个文件就是一个模块。你可以通过 import 导入模块并使用此中的函数、类和变量。例如:
- import math
- print(math.sqrt(16)) # 输出 4.0
复制代码 数据范例
Python的常见数据范例有:数字、字符串、布尔值、列表、元组和字典。相识这些数据范例及其基本操尴尬刁难于编程至关重要。
数字范例
Python支持两种重要的数字范例:
- 整数(int):表示整数,例如:3、-5
- 浮点数(float):表示小数,例如:3.14、-0.5
字符串范例
字符串(str)是由字符组成的序列,支持多种操作,如查找、更换、拼接、切片等。例如:
- string = "Hello, Python!"
- print(string[0:5]) # 输出 'Hello'
复制代码 布尔范例
布尔范例(bool)只有两个值:True 和 False,常用于条件判断。
列表
列表(list)是一种有序且可变的数据结构,可以存储多个元素,支持索引、切片、添加、删除等操作。例如:
- my_list = [1, 2, 3, 'a', 'b']
- my_list.append(4) # 添加元素
- print(my_list[2:]) # 输出 [3, 'a', 'b', 4]
复制代码 元组
元组(tuple)是有序但不可修改的聚集,界说时使用小括号。例如:
- my_tuple = (1, 2, 3)
- print(my_tuple[1]) # 输出 2
复制代码 字典
字典(dict)是由键值对组成的无序聚集,常用于存储关联数据。例如:
- my_dict = {'name': 'Alice', 'age': 25}
- print(my_dict['name']) # 输出 'Alice'
复制代码 控制结构
条件语句 (if, else)
Python使用 if、elif 和 else 来进行条件判断:
- age = 18
- if age >= 18:
- print("成年人")
- else:
- print("未成年人")
复制代码 循环语句
Python有两种循环语句:
- for 循环:用于遍历序列(如列表、字典)。
- for i in range(5):
- print(i)
复制代码 - while 循环:根据条件重复执行代码。
- count = 0
- while count < 5:
- print(count)
- count += 1
复制代码 break 和 continue
- break:用于制止循环。
- continue:跳过当前循环的剩余部分,继续下一次循环。
函数与匿名函数
界说函数
函数是可重复使用的代码块,可以通过 def 关键字来界说函数:
- def greet(name):
- return f"Hello, {name}!"
- print(greet("Alice"))
复制代码 匿名函数 (lambda)
lambda 用于创建匿名函数,只能包罗一个表达式:
- add = lambda x, y: x + y
- print(add(2, 3)) # 输出 5
复制代码 面向对象编程(OOP)
Python支持面向对象编程(OOP),它强调封装、继承和多态。
类和对象
- 类:类是创建对象的蓝图,可以包罗属性(数据)和方法(举动)。
- 对象:对象是类的实例,通过类创建。
- class Dog:
- def __init__(self, name, age):
- self.name = name
- self.age = age
- def bark(self):
- print(f"{self.name} says woof!")
- dog = Dog("Buddy", 3)
- dog.bark()
复制代码 封装、继承与多态
- 封装:将数据和方法封装在类中,隐蔽实现细节。
- 继承:子类可以继承父类的属性和方法。
- 多态:同一方法在差别对象中表现出差别的举动。
魔术方法
- __init__():构造方法,用于初始化对象。
- __str__():用于返回对象的字符串表示。
文件操作
Python提供了强大的文件操作功能,使用 open() 方法可以打开文件进行读写操作。
打开文件
常见的文件模式包罗:
- 'r':只读模式
- 'w':写入模式(会覆盖文件内容)
- 'a':追加模式
- 'rb' 和 'wb':以二进制方式读写文件
- with open('example.txt', 'r') as file:
- content = file.read()
- print(content)
复制代码 写入文件
使用 file.write() 方法将数据写入文件:
- with open('example.txt', 'w') as file:
- file.write("Hello, World!")
复制代码 上下文管理器
使用 with 语句可以确保文件在使用完后精确关闭,克制文件句柄泄漏。
异常处理
Python的异常处理通过 try...except 语句来捕捉和处理错误。如许可以克制程序在碰到错误时崩溃。
- try:
- x = 10 / 0
- except ZeroDivisionError:
- print("不能除以零")
复制代码 字符串操作
常见字符串方法
- 切片:提取子字符串
- string = "Python"
- print(string[:3]) # 输出 'Pyt'
复制代码 - 查找:查找子字符串的位置
- print(string.find('Py')) # 输出 0
复制代码 - 更换:更换字符串中的部分内容
- print(string.replace('P', 'J')) # 输出 'Jython'
复制代码 - 拆分:将字符串拆分为多个子字符串
- print(string.split('t')) # 输出 ['Py', 'hon']
复制代码
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。 |