欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Python?SQLAlchemy庫的實現(xiàn)示例

 更新時間:2024年06月07日 08:37:45   作者:寒秋丶  
SQLAlchemy庫是一個強大的工具,為開發(fā)人員提供了便捷的方式來處理與數(shù)據(jù)庫的交互,本文主要介紹了Python?SQLAlchemy庫的實現(xiàn)示例,具有一定的參考價值,感興趣的可以了解一下

大家好,在Python生態(tài)系統(tǒng)中,SQLAlchemy庫是一個強大的工具,為開發(fā)人員提供了便捷的方式來處理與數(shù)據(jù)庫的交互。無論是開發(fā)一個小型的Web應用程序,還是構(gòu)建一個大型的企業(yè)級系統(tǒng),SQLAlchemy都能滿足你的需求,并提供靈活性和性能上的優(yōu)勢。本文將帶你深入探索SQLAlchemy庫,從基礎概念到高級用法,讓你對其有一個全面的了解。

一、介紹

SQLAlchemy是Python中一個強大的開源SQL工具包和對象關(guān)系映射(ORM)庫,它允許開發(fā)人員以Python代碼的方式與關(guān)系型數(shù)據(jù)庫進行交互。無論是簡單的SQLite數(shù)據(jù)庫,還是復雜的MySQL、PostgreSQL、Oracle等企業(yè)級數(shù)據(jù)庫,SQLAlchemy都能輕松應對。

在傳統(tǒng)的數(shù)據(jù)庫交互中,開發(fā)人員通常需要編寫大量的SQL語句來執(zhí)行各種操作,如創(chuàng)建表、插入數(shù)據(jù)、查詢記錄等。這種方式可能會導致代碼重復、可維護性差和安全性問題。而SQLAlchemy的出現(xiàn)解決了這些問題。

SQLAlchemy提供了一種更加直觀和Pythonic的方式來處理數(shù)據(jù)庫交互。它的主要優(yōu)勢之一是將數(shù)據(jù)庫表映射為Python類,使得開發(fā)人員可以使用面向?qū)ο蟮姆绞絹聿僮鲾?shù)據(jù)庫,而不必直接與SQL語句打交道。這種抽象化的設計讓數(shù)據(jù)庫操作變得更加簡單和直觀。

此外,SQLAlchemy還提供了強大的查詢語言和靈活的對象關(guān)系映射機制,使得開發(fā)人員可以輕松地執(zhí)行復雜的數(shù)據(jù)庫查詢和操作。它支持事務管理、連接池、數(shù)據(jù)庫連接的自動管理等功能,為開發(fā)人員提供了一套完整的數(shù)據(jù)庫解決方案。

二、安裝和配置SQLAlchemy

安裝SQLAlchemy非常簡單,可以通過pip(Python包管理器)來完成。以下是安裝SQLAlchemy的步驟:

1、使用pip安裝SQLAlchemy

打開命令行界面(如終端或命令提示符),然后運行以下命令:

pip install sqlalchemy

這將會從Python Package Index(PyPI)下載并安裝SQLAlchemy庫及其依賴項。

2、確認安裝

安裝完成后,你可以運行以下命令來確認SQLAlchemy已成功安裝:

python -c "import sqlalchemy; print(sqlalchemy.__version__)"

如果安裝成功,將會打印出SQLAlchemy的版本號。

現(xiàn)在,SQLAlchemy已經(jīng)成功安裝在你的Python環(huán)境中了。接下來,讓我們進行簡單的配置。

3、配置SQLAlchemy連接

在使用SQLAlchemy之前,你需要配置連接信息,以便連接到數(shù)據(jù)庫。SQLAlchemy支持多種數(shù)據(jù)庫,因此你需要根據(jù)你使用的數(shù)據(jù)庫類型進行相應的配置。以下是一個簡單的示例,演示如何配置連接到SQLite數(shù)據(jù)庫:

from sqlalchemy import create_engine

# SQLite數(shù)據(jù)庫連接字符串
DATABASE_URL = "sqlite:///mydatabase.db"

# 創(chuàng)建數(shù)據(jù)庫引擎
engine = create_engine(DATABASE_URL)

# 測試連接是否成功
if engine.connect():
    print("Connection successful!")
else:
    print("Connection failed!")

在這個示例中,我們使用了SQLite數(shù)據(jù)庫,并指定了一個SQLite連接字符串作為數(shù)據(jù)庫的路徑。你可以根據(jù)自己的需要修改連接字符串,以連接到其他類型的數(shù)據(jù)庫,如MySQL、PostgreSQL等。

三、核心概念

當談到SQLAlchemy的核心概念時,通常涉及到一些重要的概念和組件,包括表(Table)、模型(Model)、會話(Session)等。下面是對這些核心概念的詳細介紹:

表(Table)

表是數(shù)據(jù)庫中存儲數(shù)據(jù)的結(jié)構(gòu)化方式,它由一系列列組成,每列定義了表中存儲的數(shù)據(jù)的類型。在SQLAlchemy中,表可以通過Table類來表示,通常與數(shù)據(jù)庫中的實際表相對應。你可以使用Table類來定義表的結(jié)構(gòu),包括列的名稱、數(shù)據(jù)類型、約束條件等。

模型(Model)

模型是SQLAlchemy中最重要的概念之一,它將數(shù)據(jù)庫中的表映射為Python類。每個模型類對應著數(shù)據(jù)庫中的一個表,類的屬性對應著表中的列。通過模型,你可以使用面向?qū)ο蟮姆绞絹聿僮鲾?shù)據(jù)庫,而不必直接編寫SQL語句。在SQLAlchemy中,模型通常是通過繼承declarative_base類創(chuàng)建的。

會話(Session)

會話是SQLAlchemy中用于管理數(shù)據(jù)庫事務的核心組件之一。通過會話,你可以執(zhí)行數(shù)據(jù)庫的增、刪、改、查等操作,并確保這些操作在一個事務中原子地提交或回滾。會話提供了一種高層次的接口,使得對數(shù)據(jù)庫的操作更加簡單和直觀。在SQLAlchemy中,你可以通過sessionmaker來創(chuàng)建會話工廠,然后使用這個工廠創(chuàng)建會話對象。

以上是SQLAlchemy中的一些核心概念,它們構(gòu)成了SQLAlchemy強大而靈活的ORM框架的基礎。理解這些概念將有助于你更好地使用SQLAlchemy進行數(shù)據(jù)庫操作,提高代碼的可維護性和可讀性。在后續(xù)的文章中,我們將會更深入地探討這些概念,并演示如何在實際項目中應用它們。

四、基本用法

下面是SQLAlchemy中基本用法的詳細介紹,包括如何創(chuàng)建數(shù)據(jù)庫模型以及執(zhí)行基本的CRUD操作(創(chuàng)建、讀取、更新、刪除):

1、創(chuàng)建數(shù)據(jù)庫模型

首先,我們需要定義數(shù)據(jù)庫模型,通常是通過創(chuàng)建一個繼承自Base的Python類來實現(xiàn)的。這個類對應著數(shù)據(jù)庫中的一張表,類的屬性對應著表中的列。例如,我們創(chuàng)建一個簡單的User模型來表示用戶表:

from sqlalchemy import Column, Integer, String
from sqlalchemy.ext.declarative import declarative_base

Base = declarative_base()

class User(Base):
    __tablename__ = 'users'

    id = Column(Integer, primary_key=True)
    username = Column(String)
    email = Column(String)

2、執(zhí)行基本的CRUD操作

一旦定義了數(shù)據(jù)庫模型,我們就可以使用SQLAlchemy來執(zhí)行各種數(shù)據(jù)庫操作,包括創(chuàng)建、讀取、更新、刪除等。

(1)創(chuàng)建(Create)

要創(chuàng)建新的數(shù)據(jù)庫記錄,我們可以使用模型類的構(gòu)造函數(shù)來創(chuàng)建對象,然后將其添加到會話中,并提交事務以保存到數(shù)據(jù)庫:

from sqlalchemy import create_engine
from sqlalchemy.orm import sessionmaker

# 創(chuàng)建數(shù)據(jù)庫引擎
engine = create_engine('sqlite:///mydatabase.db')

# 創(chuàng)建會話工廠
Session = sessionmaker(bind=engine)
session = Session()

# 創(chuàng)建新用戶
new_user = User(username='John', email='john@example.com')
session.add(new_user)
session.commit()

(2)讀?。≧ead)

要從數(shù)據(jù)庫中讀取記錄,我們可以使用查詢語句來執(zhí)行查詢操作,并使用all()方法獲取所有結(jié)果或first()方法獲取第一個結(jié)果:

# 查詢所有用戶
all_users = session.query(User).all()

# 查詢第一個用戶
first_user = session.query(User).first()

(3)更新(Update)

要更新數(shù)據(jù)庫記錄,我們可以獲取要更新的對象,然后修改其屬性,并提交事務以保存更改到數(shù)據(jù)庫:

# 查詢并更新用戶
user = session.query(User).filter_by(username='John').first()
user.email = 'john_new@example.com'
session.commit()

(4)刪除(Delete)

要刪除數(shù)據(jù)庫記錄,我們可以使用delete()方法來刪除對象,并提交事務以保存更改到數(shù)據(jù)庫:

# 查詢并刪除用戶
user = session.query(User).filter_by(username='John').first()
session.delete(user)
session.commit()

通過以上步驟,我們可以使用SQLAlchemy執(zhí)行基本的CRUD操作,從而實現(xiàn)對數(shù)據(jù)庫的增、刪、改、查等功能。這些操作可以幫助我們輕松地管理數(shù)據(jù)庫中的數(shù)據(jù),提高開發(fā)效率和代碼質(zhì)量。

五、查詢

在SQLAlchemy中,查詢是使用query()方法執(zhí)行的。通過查詢對象,您可以執(zhí)行各種數(shù)據(jù)庫操作,包括過濾、排序、連接等。

1、過濾(Filter)

過濾操作用于根據(jù)特定條件檢索數(shù)據(jù)。

from sqlalchemy import create_engine
from sqlalchemy.orm import sessionmaker
from models import Employee  # 假設Employee模型已經(jīng)定義

# 創(chuàng)建數(shù)據(jù)庫引擎和會話
engine = create_engine('sqlite:///example.db')
Session = sessionmaker(bind=engine)
session = Session()

# 查詢所有名字為"John"的員工
john_employees = session.query(Employee).filter(Employee.name == 'John').all()

2、排序(Order By)

排序操作用于按特定列的順序檢索數(shù)據(jù)。

# 查詢所有員工按照名字的字母順序排序
sorted_employees = session.query(Employee).order_by(Employee.name).all()

3、連接(Join)

連接操作用于聯(lián)合兩個或多個表以獲取相關(guān)聯(lián)的數(shù)據(jù)。

from models import Department  # 假設Department模型已經(jīng)定義

# 查詢所有員工及其所屬部門的名稱
employees_with_departments = session.query(Employee, Department).join(Employee.department).all()

4、聚合函數(shù)(Aggregate Functions)

聚合函數(shù)用于執(zhí)行統(tǒng)計操作,如計數(shù)、求和、平均值等。

from sqlalchemy import func

# 查詢員工數(shù)量
employee_count = session.query(func.count(Employee.id)).scalar()

5、過濾并排序(Filter and Order By)

您可以結(jié)合使用過濾和排序來執(zhí)行更精細的數(shù)據(jù)檢索。

# 查詢名字為"John"的員工并按照ID降序排列
john_employees_sorted = session.query(Employee).filter(Employee.name == 'John').order_by(Employee.id.desc()).all()

6、聚合查詢(Group By)

聚合查詢用于對數(shù)據(jù)進行分組并應用聚合函數(shù)。

# 查詢每個部門的員工數(shù)量
from sqlalchemy import func

employee_count_by_department = session.query(Employee.department_id, func.count(Employee.id)).group_by(Employee.department_id).all()

7、子查詢(Subquery)

子查詢是在主查詢中使用的嵌套查詢。

# 查詢工資高于平均工資的員工
from sqlalchemy.sql import select

avg_salary = session.query(func.avg(Employee.salary)).scalar()
subquery = select([Employee]).where(Employee.salary > avg_salary).alias()
employees_above_avg_salary = session.query(subquery).all()

8、原生 SQL 查詢(Raw SQL Query)

有時您可能需要執(zhí)行原生的 SQL 查詢,SQLAlchemy也支持這種方式。

# 執(zhí)行原生 SQL 查詢
result = session.execute("SELECT * FROM employees WHERE salary > :salary", {"salary": 50000})
for row in result:
    print(row)

六、關(guān)聯(lián)關(guān)系

關(guān)聯(lián)關(guān)系在數(shù)據(jù)庫中非常常見,用于表示不同表之間的關(guān)聯(lián)和連接。在SQLAlchemy中,您可以使用外鍵和關(guān)系來定義和管理這些關(guān)聯(lián)關(guān)系。我將詳細介紹如何定義和使用數(shù)據(jù)庫表之間的不同關(guān)聯(lián)關(guān)系,包括一對一、一對多和多對多關(guān)系。

1. 一對一關(guān)系(One-to-One Relationship)

一對一關(guān)系表示兩個表之間的一一對應關(guān)系。例如,一個人只能有一個身份證號,而一個身份證號也只能對應一個人。

定義模型:

from sqlalchemy import Column, Integer, String, ForeignKey
from sqlalchemy.orm import relationship
from sqlalchemy.ext.declarative import declarative_base

Base = declarative_base()

class Person(Base):
    __tablename__ = 'persons'

    id = Column(Integer, primary_key=True)
    name = Column(String)
    identity_card_id = Column(Integer, ForeignKey('identity_cards.id'))

    identity_card = relationship("IdentityCard", uselist=False)

class IdentityCard(Base):
    __tablename__ = 'identity_cards'

    id = Column(Integer, primary_key=True)
    number = Column(String, unique=True)

使用:

# 創(chuàng)建一個人和一個身份證號
person = Person(name='John')
identity_card = IdentityCard(number='1234567890')

# 關(guān)聯(lián)兩者
person.identity_card = identity_card

2. 一對多關(guān)系(One-to-Many Relationship)

一對多關(guān)系表示一個對象可以有多個相關(guān)聯(lián)的對象。例如,一個部門可以有多個員工,但一個員工只能屬于一個部門。

定義模型:

class Department(Base):
    __tablename__ = 'departments'

    id = Column(Integer, primary_key=True)
    name = Column(String)
    employees = relationship("Employee", back_populates="department")

class Employee(Base):
    __tablename__ = 'employees'

    id = Column(Integer, primary_key=True)
    name = Column(String)
    department_id = Column(Integer, ForeignKey('departments.id'))

    department = relationship("Department", back_populates="employees")

使用:

# 創(chuàng)建一個部門和兩個員工
department = Department(name='IT')
employee1 = Employee(name='John')
employee2 = Employee(name='Alice')

# 關(guān)聯(lián)員工到部門
department.employees.append(employee1)
department.employees.append(employee2)

3. 多對多關(guān)系(Many-to-Many Relationship)

多對多關(guān)系表示兩個對象之間存在復雜的多對多關(guān)系。例如,學生和課程之間的關(guān)系,一個學生可以選修多門課程,而一門課程也可以被多個學生選修。

定義模型:

association_table = Table('association', Base.metadata,
    Column('student_id', Integer, ForeignKey('students.id')),
    Column('course_id', Integer, ForeignKey('courses.id'))
)

class Student(Base):
    __tablename__ = 'students'

    id = Column(Integer, primary_key=True)
    name = Column(String)
    courses = relationship("Course", secondary=association_table, back_populates="students")

class Course(Base):
    __tablename__ = 'courses'

    id = Column(Integer, primary_key=True)
    name = Column(String)
    students = relationship("Student", secondary=association_table, back_populates="courses")

使用:

# 創(chuàng)建兩個學生和兩門課程
student1 = Student(name='John')
student2 = Student(name='Alice')
course1 = Course(name='Math')
course2 = Course(name='Science')

# 關(guān)聯(lián)學生和課程
student1.courses.append(course1)
student1.courses.append(course2)
student2.courses.append(course2)

以上是在SQLAlchemy中定義和使用一對一、一對多和多對多關(guān)系的示例。您可以根據(jù)實際需求,在模型中定義適當?shù)年P(guān)聯(lián)關(guān)系,以便更好地管理和操作您的數(shù)據(jù)。

七、事務管理

事務管理是數(shù)據(jù)庫操作中非常重要的一部分,它確保了數(shù)據(jù)庫操作的一致性和完整性。在SQLAlchemy中,您可以使用會話(Session)對象來管理事務。我將詳細介紹如何使用SQLAlchemy來管理事務。

1、開啟事務

在SQLAlchemy中,當您創(chuàng)建一個會話(Session)對象時,事務會自動開啟。您可以使用session.begin()方法手動開啟事務。

from sqlalchemy.orm import sessionmaker

# 創(chuàng)建會話
Session = sessionmaker(bind=engine)
session = Session()

# 手動開啟事務
session.begin()

2、提交事務

一旦您對數(shù)據(jù)庫進行了一系列的操作,并且希望將這些操作永久保存到數(shù)據(jù)庫中,您可以使用session.commit()方法提交事務。

# 提交事務
session.commit()

3、回滾事務

如果在事務進行過程中出現(xiàn)了錯誤,或者您想要取消之前的操作,您可以使用session.rollback()方法回滾事務。

try:
    # 一系列數(shù)據(jù)庫操作
    session.commit()
except Exception as e:
    # 回滾事務
    session.rollback()

4、自動提交

在某些情況下,您可能希望在每次數(shù)據(jù)庫操作后自動提交事務,而不是手動調(diào)用commit()方法。您可以通過設置會話的autocommit參數(shù)來實現(xiàn)這一點。

# 創(chuàng)建自動提交的會話
Session = sessionmaker(bind=engine, autocommit=True)
session = Session()

5、事務的嵌套

在SQLAlchemy中,事務是可以嵌套的。如果您在一個事務中開啟了另一個事務,那么內(nèi)部事務的提交和回滾不會影響外部事務。外部事務的提交或回滾會同時提交或回滾內(nèi)部事務。

# 開啟外部事務
session.begin()

try:
    # 一系列數(shù)據(jù)庫操作
    session.begin_nested()

    try:
        # 更多數(shù)據(jù)庫操作
        session.commit()  # 提交內(nèi)部事務
    except Exception as e:
        session.rollback()  # 回滾內(nèi)部事務
        raise

    session.commit()  # 提交外部事務
except Exception as e:
    session.rollback()  # 回滾外部事務
    raise

6、事務的隔離級別

SQLAlchemy還提供了事務的隔離級別設置。默認情況下,事務的隔離級別為“可重復讀”(REPEATABLE READ)。您可以通過設置會話的isolation_level參數(shù)來更改隔離級別。

from sqlalchemy import create_engine

# 創(chuàng)建引擎并設置事務隔離級別
engine = create_engine('sqlite:///example.db', isolation_level='READ COMMITTED')

通過這些方法,您可以使用SQLAlchemy管理事務,確保數(shù)據(jù)庫操作的一致性和完整性。無論您是手動控制事務還是使用自動提交,SQLAlchemy都提供了靈活的方式來滿足您的需求。

八、性能優(yōu)化

在SQLAlchemy中,性能優(yōu)化是一個重要的方面,它可以顯著提高數(shù)據(jù)庫操作的效率。以下是一些SQLAlchemy中的性能優(yōu)化技巧:

1、延遲加載(Lazy Loading)

延遲加載是一種優(yōu)化技術(shù),它允許您在需要時才從數(shù)據(jù)庫中加載數(shù)據(jù),而不是在對象被訪問時立即加載。這可以減少不必要的數(shù)據(jù)庫查詢,提高性能。

在SQLAlchemy中,默認情況下,關(guān)聯(lián)對象是延遲加載的,這意味著當您訪問關(guān)聯(lián)對象時,才會從數(shù)據(jù)庫中加載相關(guān)數(shù)據(jù)。例如:

# 延遲加載示例
employee = session.query(Employee).first()
print(employee.department.name)  # 在訪問時加載部門對象

2、預加載(Eager Loading)

預加載是指在執(zhí)行查詢時,一次性加載所有相關(guān)聯(lián)的對象,而不是在需要時逐個加載。這樣可以減少多次查詢,提高性能。

在SQLAlchemy中,您可以使用options()方法來指定預加載選項。例如,使用joinedload()來預加載關(guān)聯(lián)對象:

from sqlalchemy.orm import joinedload

# 預加載示例
employee = session.query(Employee).options(joinedload(Employee.department)).first()
print(employee.department.name)  # 已經(jīng)預加載了部門對象

3、緩存(Caching)

緩存是指將數(shù)據(jù)庫查詢的結(jié)果保存在內(nèi)存中,以便將來的查詢可以直接從緩存中獲取,而不必再次查詢數(shù)據(jù)庫。這可以顯著提高查詢性能,特別是對于頻繁重復的查詢。

在SQLAlchemy中,您可以使用query_cache參數(shù)來啟用查詢緩存:

from sqlalchemy.orm import Query

# 啟用查詢緩存
query = session.query(Employee).options(Query.cacheable(True))

4、批量操作(Bulk Operations)

批量操作是指一次性執(zhí)行多個數(shù)據(jù)庫操作,而不是逐個執(zhí)行單個操作。這可以減少數(shù)據(jù)庫交互的次數(shù),提高性能。

在SQLAlchemy中,您可以使用bulk_save_objects()方法一次性保存多個對象:

# 批量插入示例
employees = [Employee(name='John'), Employee(name='Alice')]
session.bulk_save_objects(employees)
session.commit()

5、SQL表達式(SQL Expressions)

有時,您可能需要執(zhí)行復雜的數(shù)據(jù)庫操作,而ORM可能無法提供足夠的性能。在這種情況下,您可以使用SQL表達式直接執(zhí)行原生SQL查詢。

from sqlalchemy.sql import text

# 原生SQL查詢示例
result = session.execute(text("SELECT * FROM employees WHERE salary > :salary"), {"salary": 50000})
for row in result:
    print(row)

以上是一些在SQLAlchemy中用于性能優(yōu)化的常用技巧。根據(jù)您的具體需求和場景,選擇適合的優(yōu)化方法可以顯著提高數(shù)據(jù)庫操作的效率。更多相關(guān)Python SQLAlchemy庫內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Python使用tkinter寫一個本地密碼管理器

    Python使用tkinter寫一個本地密碼管理器

    閑來無事,看到自己有很多網(wǎng)站的賬戶密碼,有些網(wǎng)站可能打開一兩次也就忘記了,下一次在輸入賬戶密碼就想不起來,這樣很容易丟失賬號。所以本文就來用Python和tkinter寫一個本地密碼管理器吧
    2023-05-05
  • python實現(xiàn)根據(jù)給定坐標點生成多邊形mask的例子

    python實現(xiàn)根據(jù)給定坐標點生成多邊形mask的例子

    今天小編就為大家分享一篇python實現(xiàn)根據(jù)給定坐標點生成多邊形mask的例子,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-02-02
  • 用python處理圖片之打開\顯示\保存圖像的方法

    用python處理圖片之打開\顯示\保存圖像的方法

    本篇文章主要介紹了用python處理圖片之打開\顯示\保存圖像的方法,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-05-05
  • pycharm設置鼠標懸停查看方法設置

    pycharm設置鼠標懸停查看方法設置

    在本文里小編給大家分享的是關(guān)于pycharm鼠標懸停查看方法說明怎么設置的相關(guān)知識點,需要的朋友們參考學習下。
    2019-07-07
  • Python中endswith()函數(shù)的基本使用

    Python中endswith()函數(shù)的基本使用

    這篇文章主要介紹了Python中endswith()函數(shù)的基本使用,是Python學習當中的基礎知識,該函數(shù)可以用來檢測文件類型,需要的朋友可以參考下
    2015-04-04
  • Python切圖九宮格的實現(xiàn)方法

    Python切圖九宮格的實現(xiàn)方法

    這篇文章主要介紹了Python切圖九宮格的實現(xiàn)方法,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2019-10-10
  • Scrapy框架爬取Boss直聘網(wǎng)Python職位信息的源碼

    Scrapy框架爬取Boss直聘網(wǎng)Python職位信息的源碼

    今天小編就為大家分享一篇關(guān)于Scrapy框架爬取Boss直聘網(wǎng)Python職位信息的源碼,小編覺得內(nèi)容挺不錯的,現(xiàn)在分享給大家,具有很好的參考價值,需要的朋友一起跟隨小編來看看吧
    2019-02-02
  • python 輸出一個兩行字符的變量

    python 輸出一個兩行字符的變量

    昨天被一個哥們問怎么用 python輸出一個兩行字符的變量。寫了N個方法都覺得麻煩。
    2009-02-02
  • GPU排隊腳本實現(xiàn)空閑觸發(fā)python腳本實現(xiàn)示例

    GPU排隊腳本實現(xiàn)空閑觸發(fā)python腳本實現(xiàn)示例

    有的服務器是多用戶使用,GPU的資源常常被占據(jù)著,很可能在夜間GPU空閑了,但來不及運行自己的腳本。如果沒有和別人共享服務器的話,自己的多個程序想排隊使用GPU,也可以用這個腳本
    2021-11-11
  • python讀取ini配置的類封裝代碼實例

    python讀取ini配置的類封裝代碼實例

    這篇文章主要介紹了python讀取ini配置的類封裝代碼實例,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2020-01-01

最新評論