Section 16 MySQLdb
- ##win64-bit installation python-mysqldb1.2.5
- Installing MySQLdb under ubuntu
sudo apt-get install python-MySQLdb
- Import MySQLdb library
import MySQLdb
- Create database connection
conn = MySQLdb.connect(host="localhost",user="root",passwd="123456",db="test",charset="utf8")
- connect object properties
commit()
: If the database table is modified, submit to save the current data. Of course, if this user doesn't have permission and just does it, nothing will happen.
rollback()
: If you have permission, cancel the current operation, otherwise an error will be reported.
cursor([cursorclass])
: Cursor pointer.
- Create a cursor (pointer) cursor
cur = conn.cursor()
- cursor method of executing commands:
execute(query, args)
: Execute a single sql statement. query is the sql statement itself, and args is the list of parameter values. The return value after execution is the number of affected rows.
executemany(query, args)
: Execute a single sql statement, but repeatedly execute the parameters in the parameter list, and the return value is the number of affected rows
- Insert a record into the data table
cur.execute("insert into users (username,password,email) values (%s,%s,%s)",("python","123456","python@gmail.com"))
- Insert multiple records into the data table
cur.executemany("insert into users (username,password,email) values (%s,%s,%s)",(("google","111222","g@gmail.com"),("facebook","222333","f@face.book"),("github","333444","git@hub.com"),("docker","444555","doc@ker.com")))
- Submit database operation
conn.commit()
- Query data
cur.execute("select * from users")
- ##fetchall(self)
:Receive all Return result rows.
- fetchmany(size=None)
: Receive size return result rows. If the value of size is greater than the number of returned result rows, then Will return cursor.arraysize pieces of data.
- fetchone()
: Returns one result row.
- scroll(value, mode='relative')
: Move the pointer to a certain row. If mode='relative', it means moving the value bar from the current row. If mode='absolute', it means moving the value bar from the result set. The first line moves the value bar.
<pre class="brush:php;toolbar:false">cur.execute("select * from users") lines = cur.fetchall() for line in lines: print line cur.execute("select * from users where id=1") line_first = cur.fetchone() #只返回一条 print line_first cur.execute("select * from users") print cur.fetchall()</pre>
The method of cursor object to obtain data - cur.scroll(n)
or
cur.scroll(n,"relative")
: means to move up or down relative to the current position , n is a positive number, which means downward (forward), n is a negative number, which means upward (backward) There is another way to achieve "absolute" movement, not " Relative" move: Add a parameter "absolute" -
cur.scroll(1) cur.scroll(-2) cur.scroll(2,"absolute") #回到序号是2,但指向第三条
-
cur.execute("update users set username=%s where id=2",("mypython")) conn.commit()
Specify the database -
conn = MySQLdb.connect("localhost","root","123456",port=3306,charset="utf8") #创建数据库时不指定那个数据库 conn.select_db("test") #连接创建后再指定
Close the database -
cur.close() #先关闭游标 conn.close() #再关闭数据库
Section 17 Object-oriented
Classes and objects
- Process-oriented and object-oriented programming
- Object-oriented programming: C++, Java, Python, etc.
- Object: is an instance of a class, such as: QQ car, bus
- Process-oriented programming: functional programming, C programs, etc.
- Class: is an abstraction of things, such as: car model
- The car model can abstract the characteristics and behavior of the car, and then instantiate a real car entity Come out
- Python class definition
- When programmers need to create a type that cannot be represented by a simple type, they need to create a class
- A class combines the required variables and functions. This inclusion is also called "encapsulation"
-
class 类名: 成员变量 成员函数 class MyClass(): first = 123 def fun(self): print "I am function"
Creation of objects - Properties of objects And methods correspond to member variables and member functions in the class
-
if __name__ == "__main__": myClass = MyClass() #创建类的一个实例
The process of creating an object is called instantiation; when an object is created, it contains three characteristics: Object handles, properties and methods. -
class Person: def __init__(self, name, lang, website): self.name = name self.lang = lang self.website = website
self is a very magical parameter -
# 抽象形状类 class Shape: # 类的属性 edge = 0 # 构造函数 def __init__(self, edge): self.edge = edge # 类的方法 def getEdge(self): return self.edge # 抽象方法 def getArea(self): pass #三角形类,继承抽象形状类 class Triangle(Shape): width = 0 height = 0 # 构造函数 def __init__(self, width, height): #调用父类构造函数 Shape.__init__(self, 3) self.width = width self.height = height #重写方法 def getArea(self): return self.width * self.height / 2 #四边形类,继承抽象形状类 class Rectangle(Shape): width = 0 height = 0 # 构造函数 def __init__(self, width, height): #调用父类构造函数 Shape.__init__(self, 4) self.width = width self.height = height #重写方法 def getArea(self): return self.width * self.height triangle = Triangle(4,5); print triangle.getEdge() print triangle.getArea() rectangle = Rectangle(4,5); print rectangle.getEdge() print rectangle.getArea()
Python supports multiple inheritance, but it is not recommended
- Use the class keyword to define a class, and the first letter of the class name should be capitalized
- Handles are used to distinguish different objects
- self points to an instance of the class. When the instance calls a method, self points to the instance of the called method
The above is the detailed content of Explanation of python basic knowledge points. For more information, please follow other related articles on the PHP Chinese website!

There are many methods to connect two lists in Python: 1. Use operators, which are simple but inefficient in large lists; 2. Use extend method, which is efficient but will modify the original list; 3. Use the = operator, which is both efficient and readable; 4. Use itertools.chain function, which is memory efficient but requires additional import; 5. Use list parsing, which is elegant but may be too complex. The selection method should be based on the code context and requirements.

There are many ways to merge Python lists: 1. Use operators, which are simple but not memory efficient for large lists; 2. Use extend method, which is efficient but will modify the original list; 3. Use itertools.chain, which is suitable for large data sets; 4. Use * operator, merge small to medium-sized lists in one line of code; 5. Use numpy.concatenate, which is suitable for large data sets and scenarios with high performance requirements; 6. Use append method, which is suitable for small lists but is inefficient. When selecting a method, you need to consider the list size and application scenarios.

Compiledlanguagesofferspeedandsecurity,whileinterpretedlanguagesprovideeaseofuseandportability.1)CompiledlanguageslikeC arefasterandsecurebuthavelongerdevelopmentcyclesandplatformdependency.2)InterpretedlanguageslikePythonareeasiertouseandmoreportab

In Python, a for loop is used to traverse iterable objects, and a while loop is used to perform operations repeatedly when the condition is satisfied. 1) For loop example: traverse the list and print the elements. 2) While loop example: guess the number game until you guess it right. Mastering cycle principles and optimization techniques can improve code efficiency and reliability.

To concatenate a list into a string, using the join() method in Python is the best choice. 1) Use the join() method to concatenate the list elements into a string, such as ''.join(my_list). 2) For a list containing numbers, convert map(str, numbers) into a string before concatenating. 3) You can use generator expressions for complex formatting, such as ','.join(f'({fruit})'forfruitinfruits). 4) When processing mixed data types, use map(str, mixed_list) to ensure that all elements can be converted into strings. 5) For large lists, use ''.join(large_li

Pythonusesahybridapproach,combiningcompilationtobytecodeandinterpretation.1)Codeiscompiledtoplatform-independentbytecode.2)BytecodeisinterpretedbythePythonVirtualMachine,enhancingefficiencyandportability.

ThekeydifferencesbetweenPython's"for"and"while"loopsare:1)"For"loopsareidealforiteratingoversequencesorknowniterations,while2)"while"loopsarebetterforcontinuinguntilaconditionismetwithoutpredefinediterations.Un

In Python, you can connect lists and manage duplicate elements through a variety of methods: 1) Use operators or extend() to retain all duplicate elements; 2) Convert to sets and then return to lists to remove all duplicate elements, but the original order will be lost; 3) Use loops or list comprehensions to combine sets to remove duplicate elements and maintain the original order.


Hot AI Tools

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Undress AI Tool
Undress images for free

Clothoff.io
AI clothes remover

Video Face Swap
Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Article

Hot Tools

Dreamweaver Mac version
Visual web development tools

SAP NetWeaver Server Adapter for Eclipse
Integrate Eclipse with SAP NetWeaver application server.

SublimeText3 Chinese version
Chinese version, very easy to use

MantisBT
Mantis is an easy-to-deploy web-based defect tracking tool designed to aid in product defect tracking. It requires PHP, MySQL and a web server. Check out our demo and hosting services.

DVWA
Damn Vulnerable Web App (DVWA) is a PHP/MySQL web application that is very vulnerable. Its main goals are to be an aid for security professionals to test their skills and tools in a legal environment, to help web developers better understand the process of securing web applications, and to help teachers/students teach/learn in a classroom environment Web application security. The goal of DVWA is to practice some of the most common web vulnerabilities through a simple and straightforward interface, with varying degrees of difficulty. Please note that this software
