python生成随机电话号码,循环插入10万条数据
时间: 2023-07-04 17:09:20 浏览: 49
可以使用Python的random模块生成随机电话号码,然后使用循环插入10万条数据到数据库中。以下是一个简单的示例代码:
```python
import random
import pymysql
# 连接数据库
conn = pymysql.connect(host='localhost', user='root', password='123456', database='test')
cursor = conn.cursor()
# 循环插入数据
for i in range(100000):
# 生成随机电话号码
phone_num = ''.join(random.sample('0123456789', 11))
# 插入数据到数据库
sql = f"INSERT INTO users (name, phone_num) VALUES ('user{i}', '{phone_num}')"
cursor.execute(sql)
conn.commit()
# 关闭连接
cursor.close()
conn.close()
```
这个示例代码会循环插入10万条数据到名为`test`的数据库中的`users`表中,每条数据包含一个自动生成的名称和随机生成的电话号码。注意,这个示例中生成的电话号码包含11个数字,因为可能会有区号。如果你需要其他格式的电话号码,可以自行调整代码。
相关问题
python生成随机以80,90开头的电话号码,循环插入10万条数据
可以使用Python的random模块生成随机数,再结合循环和字符串操作实现生成随机以80、90开头的电话号码并插入数据库。
以下是一个简单的示例代码,假设数据库使用MySQL,并且已经建好了一个名为"phone_numbers"的表,包含一个名为"number"的字段。
```python
import random
import pymysql
# 连接数据库
conn = pymysql.connect(host='localhost', user='root', password='password', db='test', charset='utf8mb4')
cursor = conn.cursor()
# 生成随机电话号码并插入数据库
for i in range(100000):
num_prefix = random.choice(['80', '90'])
num_suffix = ''.join(random.choice('0123456789') for _ in range(8))
phone_number = num_prefix + num_suffix
cursor.execute("INSERT INTO phone_numbers (number) VALUES (%s)", phone_number)
if (i + 1) % 10000 == 0:
conn.commit() # 每插入1万条数据提交一次事务
# 关闭数据库连接
conn.commit()
cursor.close()
conn.close()
```
这段代码使用random.choice方法从列表["80", "90"]中随机选择一个前缀,再使用random.choice和字符串拼接生成8位的后缀,最后将前缀和后缀拼接成完整的电话号码。每生成1万条数据提交一次事务,以提高插入数据的效率。
python循环插入mysql数据库10万条数据
你可以使用Python的循环和MySQL连接库来插入10万条数据到MySQL数据库。下面是一个示例代码:
```python
import mysql.connector
# 连接到MySQL数据库
cnx = mysql.connector.connect(
host="localhost",
user="your_username",
password="your_password",
database="your_database"
)
cursor = cnx.cursor()
# 循环插入数据
for i in range(100000):
# 构造要插入的数据
id = i
name = f'name{i}'
age = 20 + i % 10
# 添加其他字段和数据
# 构造插入语句
insert_query = f"INSERT INTO your_table (id, name, age) VALUES ({id}, '{name}', {age})"
# 执行插入操作
cursor.execute(insert_query)
# 提交事务
cnx.commit()
# 关闭连接
cursor.close()
cnx.close()
```
请确保将代码中的`your_username`,`your_password`,`your_database`,`your_table`替换为你的数据库信息和表名。并根据你的实际需求修改插入的字段和数据。
请注意,插入大量数据可能需要一些时间,请确保你的数据库服务器能够处理这么多数据的插入操作。如果你需要更高效的插入方式,可以考虑使用批量插入或者使用ORM框架来简化操作。