8.9-python管理

一、回顾

[root@python ~]# vim test.py
​
a=3
b=4
print(a+b)
print(a**2+b**2)
print(25**0.5)
​
[root@python ~]# python3 test.py 
7
25
5.0
​
​
#调试test.py脚本
[root@python ~]# python3 -m pdb test.py 
> /root/test.py(1)<module>()
-> a=3
(Pdb) n
> /root/test.py(2)<module>()
-> b=4
(Pdb) n
> /root/test.py(3)<module>()
-> print(a+b)
(Pdb) n
7
> /root/test.py(4)<module>()
-> print(a**2+b**2)
(Pdb) n
25
> /root/test.py(5)<module>()
-> print(25**0.5)
(Pdb) n
5.0
--Return--
> /root/test.py(5)<module>()->None
-> print(25**0.5)
​
​
​
[root@python ~]# python3
Python 3.6.8 (default, Nov 14 2023, 16:29:52) 
[GCC 4.8.5 20150623 (Red Hat 4.8.5-44)] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import random
>>> random
<module 'random' from '/usr/lib64/python3.6/random.py'>
>>> 
[1]+  已停止               python3
[root@python ~]# vim /usr/lib64/python3.6/random.py
[root@python ~]# fg
python3
​
​
>>> random
<module 'random' from '/usr/lib64/python3.6/random.py'>
>>> random.randint(0,10)
9
>>> random.randint(0,10)
2
>>> random.randint(0,10)
8
>>> random.randint(0,10)
4

二、python管理

1.方法一

1.设置清华镜像(从国内下载安装包,提高下载和安装速度)

2.安装pandas数据分析工具(pandas是知名的数据分析工具,pandas有完整的数据读取工具,以及DateFrame数据框架,用于保存从数据库中读取的数据 )

3.安装pymysql连接器(oracle为开发者提供的python管理mysql 的⼯具,通过这个⼯具,就恶意在不替原有代码的情况下,应对 数据库软件的升级)

[root@python ~]# pip3 config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple
​
[root@python ~]# pip3 install pymysql
​
[root@python ~]# pip3 install pandas

>>> import pandas
>>> import pymysql
>>> import pandas
>>> import whel
Traceback (most recent call last):File "<stdin>", line 1, in <module>
ModuleNotFoundError: No module named 'whel'
>>> pymysql
<module 'pymysql' from '/usr/local/lib64/python3.6/site-packages/pymysql/__init__.py'>
>>> pandas
<module 'pandas' from '/usr/local/lib64/python3.6/site-packages/pandas/__init__.py'>
>>> import pymysql as pm
>>> import pandas as pd
>>> pm
<module 'pymysql' from '/usr/local/lib64/python3.6/site-packages/pymysql/__init__.py'>
>>> pd
<module 'pandas' from '/usr/local/lib64/python3.6/site-packages/pandas/__init__.py'>
​
>>> conn=pm.connect(
... host='123.249.27.70',
... user='abcd',
... password='abcd',
... database='test',
... port=6001);
>>> conn
<pymysql.connections.Connection object at 0x7fc060751400>
>>> cursor=conn.cursor()
>>> cursor
<pymysql.cursors.Cursor object at 0x7fc060e87860>
>>> sql="select * from student"
>>> sql
'select * from student'
>>> cursor.execute(sql)
5
>>>  cursor.fetchall()File "<stdin>", line 1cursor.fetchall()^
IndentationError: unexpected indent
>>> cursor.fetchall()
((1, '章三', '男'), (2, '李四', '女'), (3, '小凤仙', '女'), (4, '章丘铁锅', '男'), (6, '孙颖莎', '女'))
>>> cursor.description
(('id', 3, None, 11, 11, 0, False), ('name', 253, None, 180, 180, 0, False), ('gender', 253, None, 16, 16, 0, False))
>>> head=[]
>>> desc=cursor.description
>>> for var in desc:
...     print(var[0])
... 
id
name
gender
>>> for var in desc:
...     head.append(var[0])
... 
>>> head
['id', 'name', 'gender']
>>> pd.DataFrame(data=cursor.fetchall(),columns=head)
Empty DataFrame
Columns: [id, name, gender]
Index: []
>>> cursor.fetchall()
()
>>> cursor.execute(sql)
5
>>> res=cursor.fetchall()
>>> res
((1, '章三', '男'), (2, '李四', '女'), (3, '小凤仙', '女'), (4, '章丘铁锅', '男'), (6, '孙颖莎', '女'))
>>> head
['id', 'name', 'gender']
>>> pd.DataFrame(data=res,columns=head)id  name gender
0   1    章三      男
1   2    李四      女
2   3   小凤仙      女
3   4  章丘铁锅      男
4   6   孙颖莎      女
>>>

2.方法二

[root@python ~]# vim python_mysql.py
​
class Python_Mysql_01(object):
​def __init__(self):print("test")
​
if __name__=="__main__":pmp1=Python_Mysql_01()[root@python ~]# python3 python_mysql.py
test           

import pymysql
​
class Python_Mysql_01(object):
​def __init__(self):print("test")def getConn(self):conn=pymysql.connect(host='123.249.27.70',user='abcd',password='abcd',database='test',port=6001)print(conn)return conn
​
if __name__=="__main__":#初始化Python_Mysql_01类,创建实例,pmp,之后所有的方法都可以在实列中调用pmp=Python_Mysql_01()pmp.getConn()[root@python ~]# python3 python_mysql.py
test
<pymysql.connections.Connection object at 0x7f9952e396a0>
​

import pymysql
​
class Python_Mysql_01(object):
​def __init__(self):print("test")def getConn(self):conn=pymysql.connect(host='123.249.27.70',user='abcd',password='abcd',database='test',port=6001)
#               print(conn)return conn
​
if __name__=="__main__":#初始化Python_Mysql_01类,创建实例,pmp,之后所有的方法都可以在实列中调用pmp=Python_Mysql_01()# 获得connconn=pmp.getConn()#获得游标cursor=conn.cursor()print(cursor)
[root@python ~]# python3 python_mysql.py
test
<pymysql.cursors.Cursor object at 0x7f99af8e0d30>
​
​

[root@python ~]# vim  python_mysql_01 
​
import pymysql
import pandas
​
class Python_Mysql_01(object):
​def __init__(self):print("======================")
​def getConn(self):conn=pymysql.connect(host=input("sign host_ip|name:"),user=input("sign database username:"),password=input("sign database password:"),database=input("sign database name:"),port=int(input("sign port no ")))
#       print(conn)return conn
​def getRes(self,cursor,sql):cursor.execute(sql)
​# 获得查询的数据data=cursor.fetchall()
​# 表头head=[item[0] for item in cursor.description]# 组成pandas数据框 DataFramereturn pandas.DataFrame(data=data,columns=head)
​
if __name__=="__main__":# 初始化Python_Mysql_01类,创建实例,pmp,之后所有的方法都可以在实例中调用pmp=Python_Mysql_01()# 获得connconn=pmp.getConn()
​#获得游标   cursor=conn.cursor()
#   print(cursor)tablename=input("sign tablename")df=pmp.getRes(cursor,"select * from "+tablename)print(df)   
​

[root@python ~]# python3 -m pip install --upgrade pip
​
[root@python ~]# which pyinstaller
/usr/local/bin/pyinstaller
[root@python ~]# pyinstaller --onefile python_mysql_01.py 
​
[root@python ~]# ls
anaconda-ks.cfg  dist    py001.py  py003.py     python_mysql_01.py    python_mysql.py
build            for.py  py002.py  __pycache__  python_mysql_01.spec  test.py
[root@python ~]# cd dist/
[root@python dist]# ls
python_mysql_01
​
​
​
[root@python dist]# ./python_mysql_01 
​
sign host_ip|name:123.249.27.70
sign database username:abcd
sign database password:abcd
sign database name:test
sign port no 6001
sign tablenamestudentid  name gender
0   1    章三      男
1   2    李四      女
2   3   小凤仙      女
3   4  章丘铁锅      男
4   6   孙颖莎      女
​
​

[root@python dist]# cd
[root@python ~]# python3 -m http.server 9000
​
Serving HTTP on 0.0.0.0 port 9000 (http://0.0.0.0:9000/) ...
192.168.2.1 - - [09/Aug/2024 17:36:42] "GET / HTTP/1.1" 200 -
192.168.2.1 - - [09/Aug/2024 17:36:42] code 404, message File not found
192.168.2.1 - - [09/Aug/2024 17:36:42] "GET /favicon.ico HTTP/1.1" 404 -

浏览器访问:192.168.2.40:9000

后台运行
​
[root@python ~]# nohup python3 -m http.server 9000 &
[3] 2740
[root@python ~]# nohup: 忽略输入并把输出追加到"nohup.out"

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/397170.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

SpringCloud天机学堂:我的课表(三)

SpringCloud天机学堂&#xff1a;我的课表&#xff08;三&#xff09; 文章目录 SpringCloud天机学堂&#xff1a;我的课表&#xff08;三&#xff09;1、添加课程到课表2、分页查询课表3、查询正在学习的课程 1、添加课程到课表 首先&#xff0c;用户支付完成后&#xff0c;需…

JSON + AJAX + ThreadLocal + 文件上传下载

JSON数据交换 规则 JSON对象和字符串转换 <script type"text/javascript">var jsonPerson {"name": "jack","age": 20}console.log(jsonPerson);var strPerson JSON.stringify(jsonPerson);//对jsonPerson没有影响console.lo…

django如何更新数据库字段并与数据库保持同步?

关键步骤&#xff1a; 第一步&#xff1a; 执行&#xff1a;python manage.py makemigrations 你的项目名称第二步&#xff1a;它会提示你选1还是2&#xff0c;这里因为添加字段&#xff0c;所以选1第三步&#xff1a;出现>>>这个&#xff0c;直接输入这个第四步&am…

cnetos部署高可用以及七层负载均衡

文章目录 centos部署高可用以及七层负载均衡一、准备环境二、配置高可用第一台&#xff1a;第二台&#xff1a; 三、配置负载均衡第一台的七层负载均衡器为haproxy第二台的七层负载均衡器为nginx 四、配置后端服务器五、测试 centos部署高可用以及七层负载均衡 一、准备环境 …

密码学基础:搞懂Hash函数SHA1、SHA-2、SHA3(1)

目录 1.消息摘要(Hash) 2.SHA-1 3.SHA-2 4.小结 1.消息摘要(Hash) Hash函数是一种单向密码体制&#xff0c;把任意长度的输入经过变换得到一个固定长度的输出&#xff0c;同时它还具备单向性&#xff0c;只能从明文到密文&#xff0c;不能逆向&#xff0c;正是由于Hash函数…

数据结构----队列和栈

小编会一直更新数据结构相关方面的知识&#xff0c;使用的语言是Java&#xff0c;但是其中的逻辑和思路并不影响&#xff0c;如果感兴趣可以关注合集。 希望大家看完之后可以自己去手敲实现一遍&#xff0c;同时在最后我也列出一些基本和经典的题目&#xff0c;可以尝试做一下。…

C# winform 三层架构 增删改查 修改数据(修改篇)

ss一.留言 本专栏三层架构已经更新了 添加 登录 显示&#xff0c;还差修改以及删除&#xff0c;本篇更新修改&#xff0c;主要操作为点击修改某一条数据&#xff0c;然后跳转页面进行修改。 二.展示 我们先看DAL代码 /// <summary>/// 修改/// </summary>/// &l…

算法基础知识——11种距离度量

简介&#xff1a;个人学习分享&#xff0c;如有错误&#xff0c;欢迎批评指正。 前言&#xff1a;距离的作用 数据聚类&#xff1a;距离度量在聚类算法&#xff08;如K-means、层次聚类&#xff09;中用于衡量数据点之间的相似性或差异性&#xff0c;帮助确定聚类的中心和边界…

haproxy总结与实验

一、负载均衡 1.1 简述负载均衡 在高并发的业务场景下&#xff0c;解决单个节点压力过大&#xff0c;导致Web服务响应过慢&#xff0c;特别是严重的情况下导致服务瘫痪&#xff0c;无法正常提供服务的问题&#xff0c;而负载均衡的目的就是为了维护系统稳定可靠。负载均衡&…

Redis -LFU(Least Frequently Used,最少使用频率)缓存淘汰算法

在 Redis 的 LFU&#xff08;Least Frequently Used&#xff0c;最少使用频率&#xff09;缓存淘汰算法中&#xff0c;lru 字段被拆分成两部分&#xff1a;高 16 位存储 ldt&#xff08;Last Decrement Time&#xff09;&#xff0c;低 8 位存储 logc&#xff08;Logistic Coun…

Postgresql导入矢量数据

前期准备 工具&#xff1a;PgAdmin&#xff0c;postgis-bundle Postgres安装和postgis安装可以百度别的教程。 创建数据库添加扩展 如图&#xff0c;使用PgAdmin创建名为shp的数据库&#xff0c;并在扩展item中添加postgis扩展。 添加扩展方法可以用查询工具输入以下sql语句&…

LeetCode 热题 HOT 100 (024/100)【宇宙最简单版】

【哈希表】No. 0128 最长连续序列【中等】&#x1f449;力扣对应题目指路 希望对你有帮助呀&#xff01;&#xff01;&#x1f49c;&#x1f49c; 如有更好理解的思路&#xff0c;欢迎大家留言补充 ~ 一起加油叭 &#x1f4a6; 欢迎关注、订阅专栏 【力扣详解】谢谢你的支持&am…

ES6模块化简明笔记

1、什么是模块化 详见看上一篇笔记CommonJs模块化简明笔记 2、为什么需要模块化 详见看上一篇笔记CommonJs模块化简明笔记 3、导入和导出的概念 详见看上一篇笔记CommonJs模块化简明笔记 4、模块导出&#xff08;暴露&#xff09; 4.1 导出&#xff08;暴露&#xff09;方式1&…

C++ list的基本使用

目录 1.list简要介绍 2. list的构造 3. list中迭代器的使用 (1). 双向迭代器与随机访问迭代器使用区别 4.判空、获取元素个数 5. list头、尾元素的访问 6. 插入与删除操作 (1). 头插头删&#xff0c;尾插尾删 (2). 插入&#xff0c;删除与清空 (3). 交换 7. list容器迭代…

前端面试常考的HTML标签知识!!!

语义标签 标签名语义描述header网页头部网页的主要头部区域nav网页导航网页的导航链接区域footer网页底部网页的底部区域aside网页侧边栏网页的侧边栏区域section网页区块网页的独立区块 | article | 网页文章 | 网页的独立文章区域 | 字符实体 作用&#xff1a;在网页中显…

DataWhale夏令营——AIGC技术

一、任务流程 第一步——开通阿里云PAI-DSW试用 1.进入阿里云社区 阿里云社区&#xff1a;阿里云免费试用 - 阿里云 (aliyun.com) 2. 登录或者注册自己的阿里云账号&#xff1a; 3. 点击立即试用 领取成功之后关闭页面即可。 第二步——进入魔搭社区授权 魔搭社区&#…

HTML标记与文档结构

1.1 HTML标记基础 内容标记包括闭合标签和非闭合标签。 1.1.1 文本用闭合标签 闭合标签基本格式和属性&#xff1a; <标签名 属性1"属性值" >文本内容</标签名> 闭标签比开标签多一个斜杠。 1.1.2 引用内容够用自闭和标签 <标签名 属性1"…

Android逆向题解 攻防世界难度5- APK逆向

jeb打开apk 一眼就能看出来&#xff0c;没啥难度&#xff0c;这个难度还不如上一个难度4的题。 直接还原即可 public static void main(String[] args) throws NoSuchAlgorithmException {String userName "Tenshine";MessageDigest messageDigest0 MessageDigest…

【C++】基于多态实现员工管理系统

代码 1、主程序&#xff1a; #include<iostream> using namespace std; #include"workerManager.h"#include"worker.h" #include"employee.h" #include"manager.h" #include"boss.h"int main() {WorkerManager wm;i…

Java语言程序设计——篇十三(1)

&#x1f33f;&#x1f33f;&#x1f33f;跟随博主脚步&#xff0c;从这里开始→博主主页&#x1f33f;&#x1f33f;&#x1f33f; 欢迎大家&#xff1a;这里是我的学习笔记、总结知识的地方&#xff0c;喜欢的话请三连&#xff0c;有问题可以私信&#x1f333;&#x1f333;&…