目录
一.注释
1.单行注释
使用#开头,#后面的内容就会被视为注释,直到改行结束
# 这是一个单行注释
print("Hello, World!") # 这也是注释,位于代码后面
2.多行注释
- 使用多个#号实现多行注释
# 这是第一行注释
# 这是第二行注释
# 这是第三行注释
print("Hello, Python!")
- 使用三引号 ''' 或 """
在实际开发中一般用来做函数的开发说明文档,用于描述模块、类、函数的功能,通常放在定义的开始位置,使用 """ 或 ''' 包裹
def greet(name):
"""
这是一个问候函数。
参数:
name (str): 用户的名字
返回:
str: 问候语
"""
return f"Hello, {name}!"
二.变量与数据类型
1.变量
1.1变量的定义
在python中变量可以直接通过赋值定义,不需要声明
变量名 = 值
x = 10 # 整数
name = "Alice" # 字符串
is_active = True # 布尔值
1.2注意细节
- 变量名必须以下划线或字母开头,不能以数字开头
- 变量名只能包含字母、下划线或数字,如(_user_name)
- 变量名区分大小写,例如
age和Age是两个不同的变量。 - 不建议使用 Python 的关键字(如
if,for,def等)作为变量名 - 变量命名规则使用下划线分割式,如user_name
2.数据类型
2.1整数(int)
python中的整数没有大小限制,可以表示任意大小的整数,只要计算机的内存有足够大
x = 10 # 正整数
y = -5 # 负整数
z = 0 # 零
2.2浮点数(float)
只要是有包含小数点,python就会将其识别为浮点数,即使是小数部分为0(14.0),也是浮点数
x = 3.14 # 直接定义浮点数
y = -0.001 # 负浮点数
z = 42.0 # 虽然没有小数部分,但因为有 `.0`,所以是浮点数
pi = 22 / 7 # 通过除法运算生成的浮点数
2.3字符串(str)
字符串可通过单引号' ' 双引号" "或三引号 ''' '''/""" """来定义,python会自动识别这些引号的内容为字符串
# 使用单引号
s1 = 'Hello, World!'
# 使用双引号
s2 = "Python is great!"
# 使用三引号(多行字符串)
s3 = '''This is a
multi-line
string.'''
s4 = """Another
multi-line
string."""
字符串的基本操作
- 字符串拼接:使用
+运算符将多个字符串拼接在一起 - 字符串重复:使用
*运算符将字符串重复多次,"hello"*3重复三次hello - 字符串索引:每个字符都有一个对应的索引(位置),索引从
0开始。可以通过索引访问字符串中的某个字符,print(s[0]) # 输出变量s中(第 1 个字符) - 字符串切片:语法s[start:end:step],
start:起始索引(包含),默认为 0。end:结束索引(不包含),默认为字符串长度。step:步长,默认为 1
2.4布尔型(bool)
2.4.1概念
- 布尔型 是一种非常简单但非常重要的数据类型,用于表示逻辑值,只有两个可能的取值:
True和False True和False是 Python 的关键字,必须首字母大写,不能写成true或false
2.4.2布尔值的产生
- 直接赋值生成
is_done = True
is_error = False
- 通过比较运算符生成
比较运算符(如 ==, !=, >, <, >=, <=)用于比较两个值,返回一个布尔值。
x = 10
y = 20
print(x == y) # False,x 是否等于 y
print(x != y) # True,x 是否不等于 y
print(x > y) # False,x 是否大于 y
print(x < y) # True,x 是否小于 y
print(x >= y) # False,x 是否大于或等于 y
print(x <= y) # True,x 是否小于或等于 y
- 通过逻辑运算符生成
逻辑运算符(如 and, or, not)用于组合多个布尔值,返回一个新的布尔值。
a = True
b = False
print(a and b) # False,逻辑与
print(a or b) # True,逻辑或
print(not a) # False,逻辑非
- 通过条件表达式生成
某些函数或操作会返回布尔值。例如,isinstance() 函数用于判断一个对象是否是某个类型的实例,返回 True 或 False。
x = 10
print(isinstance(x, int)) # True,x 是否是整数类型
print(isinstance(x, str)) # False,x 是否是字符串类型
2.4.3布尔值的常用操作
- 逻辑运算
布尔值支持三种基本的逻辑运算:and(逻辑与)、or(逻辑或)、not(逻辑非)
短路径行为
对于and,如果第一个值为False则不会计算第二个值,直接返回false
对于or,如果第一个值为True则不会计算第二个值,直接返回True
a = True
b = False
print(a and b) # False
print(a or b) # True
print(not a) # False
- 布尔值的隐式转换
在 Python 中,许多值可以被隐式地转换为布尔值,尤其是在条件判断中
“假值”(Falsy Values)
以下值在布尔上下文中会被视为
False:
False- 数值
0(包括0,0.0,0j)- 空序列:
""(空字符串)、[](空列表)、()(空元组)、range(0)(空的范围)- 空映射:
{}(空字典)- 空集合:
set()(空集合)None
“真值”(Truthy Values)
除了上述“假值”之外的所有值都被视为
True,包括:
- 非零数值(如
1,-1,3.14)- 非空字符串(如
"hello")- 非空列表、元组、字典、集合等。
2.4.4布尔型的应用场景
- 条件判断,布尔型最常见的用途是作为
if语句、while循环等控制结构的条件 - 逻辑运算,布尔型用于组合多个条件,进行复杂的逻辑判断,像and or not
- 函数返回值,许多函数通过返回布尔值来表示某种状态或结果。return number % 2 == 0
- 控制循环,布尔型可以用于控制循环的执行,例如通过一个标志变量来决定是否继续循环
3.空值(None)
None的定义
None 是 Python 中的一个特殊常量,表示空值或无值
x = None
print(x) # 输出:None
print(type(x)) # 输出:<class 'NoneType'>
None的特点
- 在 Python 中,
None是一个“假值”(Falsy Value),但它与False、0、""(空字符串)、[](空列表)等其他“假值”不同。None表示“无值”或“空值”,而不是逻辑上的“假” None是一个单例对象,也就是说,无论你在程序的哪个地方使用None,它都指向同一个内存地址。你可以通过id()函数来验证这一点。
None的常见用途
- 当一个变量被声明但尚未被赋予具体的值时,可以将其初始化为
None,以表示“暂时没有值”。 - 如果一个函数没有显式地使用
return语句返回值,或者使用了return但没有指定返回值,那么该函数会默认返回None - 在定义函数时,可以将参数的默认值设置为
None,以表示“如果没有传入该参数,则使用默认的空值”def greet(name=None) - 在某些情况下,
None可以用作数据结构(如列表、字典)中的占位符,表示“空”或“未定义”。data = [1, 2, None, 4, None]
三.输入input()与输出print()
1.输出print()
print() 的主要功能是将指定的内容输出到控制台(或其他指定的输出目标)。默认情况下,输出的内容会以换行符 结尾,即每次调用 print() 后会自动换行。
1.1print()语法
print(*objects, sep=' ', end='', file=sys.stdout, flush=False)
| 参数 | 描述 |
|---|---|
*objects | 要输出的一个或多个对象(可以是变量、字符串、数字等),多个对象之间用逗号 , 分隔。 |
sep | 指定多个对象之间的分隔符,默认是空格 ' '。 |
end | 指定输出结束时的字符,默认是换行符 `' |
file | 指定输出的目标文件,默认是标准输出(控制台),即 sys.stdout。 |
flush | 是否强制刷新输出缓冲区,默认为 False。 |
输出到文件用法示例
# 打开一个文件用于追加
with open("output.txt", "a") as file:
print("This is an additional line.", file=file)
# 文件内容:Hello, File!\nThis is an additional line.
1.2print()格式化输出
1.2.1f-string形式
name = "Alice"
age = 25
print(f"我的名字是 {name},年龄是 {age} 岁。")
# 输出:我的名字是 Alice,年龄是 25 岁。
f-string 不仅可以嵌入变量,还可以直接嵌入表达式,表达式会在运行时计算
a = 10
b = 20
print(f"{a} + {b} = {a + b}")
# 输出:10 + 20 = 30
可以通过在 {} 中指定宽度和对齐方式来控制输出的格式。
print(f"{hello:<10}") #表示左对齐总长度为10,不够右侧补空格
print(f"{hello:>10}") #表示右对齐总长度为10,不够左侧补空格
print(f"{hello:^10}") #表示居中对齐总长度为10,不够两侧补空格
print(f"{hello:*<10}") #表示左对齐总长度为10,不够右侧补*
print(f"{25:05d}") #d表示是数字,5表示总长度为5,0表示不够长度左侧补0,返回值为:00025
1.2.2str.format形式
name = "Alice"
age = 25
print("我的名字是 {},年龄是 {} 岁。".format(name, age))
# 输出:我的名字是 Alice,年龄是 25 岁。
1.2.3使用%格式
早期版本中使用的格式化方法,现在不推荐在新代码中使用,但仍然兼容
name = "Alice"
age = 25
print("我的名字是 %s,年龄是 %d 岁。" % (name, age))
# 输出:我的名字是 Alice,年龄是 25 岁。
2.输入input()
基本语法
name = input("请输入你的名字:")
print("你好,", name)
特点
- 无论用户输入的是数字、字母还是其他内容,
input()函数都会将其作为字符串返回。如果需要其他类型的数据(如整数或浮点数),需要显式地进行类型转换 - 当程序执行到
input()时,它会暂停运行,等待用户输入内容并按下回车键。只有在用户按下回车键后,程序才会继续执行后续代码。

2992

被折叠的 条评论
为什么被折叠?



