1、首个Python程序
输出并展示第一条语句“Hello World!”
![https://i-blog.csdnimg.cn/direct/672abb316b7e4c698ab42e76220cf0fb.jpeg]
2、注释的种类与阐释
Python有如下两种注释方式:
(1)单行注释(#)
以#符号起始,从#到行尾的所有内容都会被视作注释内容。
(2)多行注释(三重引号)
运用”’或”””包裹多行文本,通常用于函数、类或者模块的文档字符串
![https://i-blog.csdnimg.cn/direct/701f836f906e4eca993d91bf47387d18.jpeg]
*需留意:在变量名后添加多行注释,会将注释内容打印出来。例如:打印一个倒金字塔
![https://i-blog.csdnimg.cn/direct/5660475e2b9c47f0a9065bda29a46a2a.jpeg]
3、Python里的命名与关键字
(1)标识符命名规则
标识符是变量、函数、类、模块等的名称,需遵循以下规则:
允许的字符:
字母(a – z,A – Z)、数字(0 – 9)、下划线(_)。
不能以数字开头(比如123name错误,name123正确)。
大小写敏感:
myVar和myvar是不同的标识符。
避免冲突:
不可使用Python关键字(像if,def)作为标识符。
避免与内置函数名冲突(例如print,list)。
(2)Python关键字
Python存在一组保留的关键字,不能用作变量名、函数名或者其他标识符。这些关键字是语言的核心语法元素。
我们能够输入下述代码来查看有哪些关键字:
# 输出查看关键字:
import keyword
print(keyword.kwlist)
print(len(keyword.kwlist))
最终我们得到35个关键字
![https://i-blog.csdnimg.cn/direct/9f07ec5a00a54500ac8d1036df854639.jpeg]
4、Python变量与数据类型
(1)基础变量
- 变量赋值:借助=来进行赋值,无需声明类型。左边是变量名,右边是变量值,中间是赋值运算符
x = 10 # 整数
name = "Alice" # 字符串
is_valid = True # 布尔值
# 多值赋值
a, b, c = 1, 2, 3 # 多个变量赋不同值
x = y = z = 0 # 多个变量赋相同值
name, age = "Bob", 25 # 元组解包
变量也能够直接输出:
x = 10 # 整数
print(x)
# 结果为:10
但在很多时候并非只是简单输出一个值,而是需要有更多的字符或者说明文字,让结果更为直观,这时就需要引入f,也就是format,进行固定化格式。
- 动态类型:变量类型能够随时改变。
x = 100 # x是数字型
x = "Hi" # x现在是字符串
print(f'x = {x}')
# 输出结果为: X = Hi
*需留意:f – 字符串(format简写,格式化字符串字面值),这是变量输出最为简洁的方式,特点是在字符串前加f,在单引号中直接在花括号里使用变量名。
name = "Alice" # 字符串
print(f'name = {name}')
# 位置参数:使用花括号 {} 作为占位符
print("Hello, {}! Your score is {}.".format(name, x))
# 输出:Hello, Alice! Your score is 100.
(2)基本数据类型
![https://i-blog.csdnimg.cn/direct/7e1d28d8dd2e425aa044b63f7827a626.jpeg]
(3)*复合数据类型
复合数据类型能够存储多个值。
- 列表(list):有序、可变的元素集合,支持不同数据类型。
# list类型
fruits = ["apple", "banana", "cherry"] # 创建字符串列表
mixed = [1, "hello", True] # 创建混合类型列表
print(fruits)
print(mixed)
fruits.append("date") # append()是列表的方法,用于在末尾添加单个元素。
fruits[0] = "avocado" # 将索引0的元素(原"apple")替换为"avocado"
print(fruits)
print(fruits[1:3]) # # 从start到stop-1的元素,切片:['banana', 'cherry']
![https://i-blog.csdnimg.cn/direct/8152506825534237bf4a6aaed1b54111.jpeg]
-
元组(tuple):有序、不可变的元素集合。
-
集合(set):无序、唯一元素的集合,不支持索引。
numbers = {1, 2, 3, 3} # 自动去重,实际为 {1, 2, 3}
# 操作
numbers.add(4) # 添加元素
numbers.remove(2) # 删除元素
print(3 in numbers) # 成员检查:True
- 字典(dict):字典是一种无序、可变且可嵌套的数据结构,用于存储键值对,键必须唯一。
#字典
person = { # 结构:使用花括号 {} 定义字典,每个键值对用逗号分隔。
"name": "Alice", # 键(Key):必须是不可变类型(如字符串、数字、元组),且唯一。
"age": 25, # 值(Value):可以是任意类型(如字符串、数字、列表、甚至其他字典)
"city": "New York"
}
print(person["age"]) # 输出:25
person["job"] = "Engineer" # 添加键 "job",值为 "Engineer"
print(person) # 输出现在字典
# 结果为:{'name': 'Alice', 'age': 25, 'city': 'New York', 'job': 'Engineer'}
del person["city"] # 删除键 "city" ,则其对应的值也会被删除
print(person) # 输出现在字典
# 结果为:{'name': 'Alice', 'age': 25, 'job': 'Engineer'}
5、转义字符
换行与制表符
\n:用于营造换行效果,在字符串中加入该转义字符,会让文本从下一行开始显示。
\t:能插入水平制表符,如同按下Tab键一般,使文本产生一定缩进。
引号处理
\”:当需要在字符串里包含双引号时,使用该转义字符可避免字符串提前结束。
\’:在单引号字符串中想要包含单引号,可用它来进行转义。
\\:若要在字符串中表示反斜杠本身,需要使用两个反斜杠。
其他特殊字符
\r:表示回车,会让光标回到当前行的开头位置。
\b:代表退格,作用类似于按下Backspace键,会删除前一个字符。
\f:是换页符,在打印文档时可用于切换到下一页。
6、input输入函数
input()是一个内置函数,用于从用户处获取键盘输入。该函数会暂停程序的执行,等待用户输入文本,然后按回车键结束输入 。
input()函数的基本语法是:input([prompt]),其中prompt是一个可选的字符串,用于在用户输入前显示提示信息。
name = input("请输入你的名字: ")
print(f"你好,{name}!")
运行这段代码后,程序会显示“请输入你的名字: ”,等待用户输入,然后将用户输入的内容赋值给变量name,最后打印出问候语。
*需留意:input()函数返回的始终是一个字符串类型。即使用户输入的是数字,也会被当作字符串处理。例如:
age = input("请输入你的年龄: ")
print(type(age)) # 输出:<class 'str'>
如果需要将用户输入的内容作为其他类型使用,比如整数或浮点数,就需要进行类型转换:
age = int(input("请输入你的年龄: ")) # 将输入转换为整数
print(age + 10) # 可以进行数值计算
![https://i-blog.csdnimg.cn/direct/7cc26233e1ff4f96b4652075a51c8527.jpeg]
7、运算符
(1) 算术运算符
用于基本的数学运算:+(加法)、-(减法)、(乘法)、/(除法)、//(整除)、%(取余)、*(幂运算)
a = 10
b = 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(10的3次方)
(2)比较运算符
用于比较两个值,返回布尔值(True或False):==(等于)、!=(不等于)、>(大于)、<(小于)、>=(大于等于)、<=(小于等于)。
x = 5
y = 10
print(x == y) # 输出:False
print(x != y) # 输出:True
print(x > y) # 输出:False
print(x < y) # 输出:True
print(x >= y) # 输出:False
print(x <= y) # 输出:True
(3) 逻辑运算符
用于组合条件表达式,返回布尔值:and(与)、or(或)、not(非)。
a = True
b = False
print(a and b) # 输出:False(两个都为真才为真)
print(a or b) # 输出:True(至少一个为真即为真)
print(not a) # 输出:False(取反)
(4) 赋值运算符
用于给变量赋值,支持复合赋值:=(赋值)、+=(加等于)、-=(减等于)、*=(乘等于)、/=(除等于)等。
x = 5
x += 3 # 等价于 x = x + 3,结果:x = 8
x -= 2 # 等价于 x = x - 2,结果:x = 6
x *= 4 # 等价于 x = x * 4,结果:x = 24
x /= 2 # 等价于 x = x / 2,结果:x = 12.0
print(x) #输出结果为:12.0
(5) 成员运算符
用于检查一个值是否存在于序列(如字符串、列表、元组)中:in(存在)、not in(不存在)。
fruits = ["apple", "banana", "cherry"]
print("apple" in fruits) # 输出:True
print("apple" not in fruits) # 输出:False
print("grape" not in fruits) # 输出:True
(6)身份运算符
用于比较两个对象的内存地址(是否为同一个对象):is(是同一个对象)、is not(不是同一个对象)。
a = [1, 2, 3]
b = a
c = [1, 2, 3]
print(a is b) # 输出:True(a和b指向同一个对象)
print(a is c) # 输出:False(a和c值相同,但不是同一个对象)
(7) 位运算符
用于对二进制数进行逐位操作:&(按位与)、|(按位或)、^(按位异或)、~(按位取反)、<<(左移)、>>(右移)。
x = 5 # 二进制:0101
y = 3 # 二进制:0011
print(x & y) # 输出:1(二进制:0001)
print(x | y) # 输出:7(二进制:0111)
print(x ^ y) # 输出:6(二进制:0110)
print(x << 2) # 输出:20(二进制:010100)
print(x >> 1) # 输出:2(二进制:0010)