一、填空题
1.字典的items()
转化后的数据是元组的可迭代对象,pymysql
导入过来的数据是元组或字典(取决于配置情况)的可迭代对象(如查询结果集可迭代获取每行数据)
字典 items()
当使用字典的 items()
方法时,它返回的是一个类似 dict_items
类型的对象,这个对象里面包含了字典中所有的键值对,每个键值对呈现为一个元组(比如 (键, 值)
这样的形式),并且这个 dict_items
对象是可迭代的,我们可以通过循环等方式去遍历其中的每一个元组元素,像下面这样:
my_dict = {'name': 'Alice', 'age': 25}
for item in my_dict.items():
print(item)
# 输出:('name', 'Alice')
# ('age', 25)
pymysql
导入的数据
使用 pymysql
进行数据库查询操作后,获取到的数据(比如通过 fetchall()
等方法获取查询结果集),如果没有特殊配置游标(cursor)的类型,默认返回的数据每行是一个元组,多个元组构成一个可迭代的结果集,方便我们逐行获取数据进行后续处理。不过,也可以通过配置游标,让其返回的数据每行是一个字典形式(以列名作为字典的键,对应的数据作为值),同样这个结果集整体也是可迭代的,例如:
import pymysql
# 连接数据库(这里省略了异常处理等更完善的代码逻辑)
conn = pymysql.connect(
host='localhost',
user='root',
password='123456',
database='test_db'
)
# 创建游标(以默认返回元组形式为例)
cursor = conn.cursor()
sql = "SELECT * FROM students"
cursor.execute(sql)
results = cursor.fetchall()
for row in results:
print(row)
# 输出类似:(1, 'Tom', 20) 等每行数据为元组的形式
# 若配置游标为字典形式(下面是示例配置,实际使用中可按需在合适地方设置)
# cursor = conn.cursor(pymysql.cursors.DictCursor)
# 后续执行查询和获取结果,每行数据就是字典形式了,例如:
# {'id': 1, 'name': 'Tom', 'age': 20}
2.在使用pymysql
连接数据库时,通常有以下 4 个主要的配置参数。
# 建立连接
conn = pymysql.connect(
host='localhost',
user='root',
password='your_password',
database='your_database'
)
3.以下是三种跳转iframe
窗口的方法:
-
通过索引切换
- 当一个页面中有多个
iframe
元素时,可以使用索引来定位并切换到特定的iframe
。在大多数自动化测试工具(如 Selenium)中,索引是从 0 开始计数的。 - 例如,使用 Selenium 的 Python 库,代码如下:
- 这种方法的优点是简单直接,适用于知道
iframe
在页面中的顺序的情况。但缺点是如果页面的iframe
顺序发生变化,可能会导致切换错误。
from selenium import webdriver driver = webdriver.Chrome() # 假设页面有两个iframeÿ
- 当一个页面中有多个