python学习之路
大shell,小python
修诡道的马前卒
世事洞穿而寡言,名利看淡而重学!
个人邮箱:yanzhang.guo@qq.com
展开
-
用pandas新建excel并设置表头
代码如下:import pandas#创建一个名字为excel_file_name的excel文件#这里把表头设置为(姓名name,年龄age,性别gender,城市city,技能skill) def create_form(excel_file_name): form_header = ['姓名name', '年龄age', '性别gender', '城市city', '技能skill'] df = pandas.DataFrame(columns=form_heade.原创 2021-02-17 17:53:04 · 11020 阅读 · 1 评论 -
python中关于__new__和__init__的个人理解
先看段代码:class Student: def __new__(cls, name): print(cls) return super().__new__(cls) def __init__(self, name): self.name = names = Student("Rui")print(s.name)运行结果:<class '__main__.Student'>Rui看到了什么?1,c.原创 2021-02-04 11:29:41 · 431 阅读 · 1 评论 -
python中关于object和type的个人理解
python里面一切都是对象,说到对象,那每个对象都有自己的类型,那既然说一起都是对象,那实例化对象的类型也是对象,即:看讨论type和object之间的关系:1,先看看它们的类型是什么?>>> object.__class__<class 'type'>>>> type.__class__<class 'type'>可以看到它们都是type类的,对应上图的关系,实例化对象是object,实例化对象的类型是type,那t原创 2021-02-04 11:06:10 · 510 阅读 · 1 评论 -
python3连接到sql server数据库,检查是否存在某个数据库,没有则创建
代码已经测试过了,成功!import pymssql #引入pymssql模块 def conn(): ret = pymssql.connect(host='DESKTOP-4CDQOMR', user = 'sa', password = '123456') #服务器名,账户,密码 if ret: print("连接到数据库成功!") else: print("连接到数据库失败!") return ret .原创 2021-01-24 22:36:41 · 1106 阅读 · 0 评论 -
用ssms建sql server数据库和python连接到数据库
本文内容:1,用ssms建sql server数据库2,用pthon连接到新建的数据库一、用ssms建数据库1,ssms是什么?SQL Server Management Studio (SSMS) 是一种集成环境,用于管理从 SQL Server到 Azure SQL数据库的任何 SQL基础结构。桌面图标如下;2,打开ssms,登录,用Sql Server Authentication的方式登录,记住Server name、login、password,等一下要用。3,原创 2021-01-10 21:51:20 · 1395 阅读 · 0 评论 -
python3修改pip执行环境和安装软件源
pip是 Python包管理工具,该工具提供了对Python包的查找、下载、安装、卸载的功能。Powershell是运行在windows机器上实现系统和应用程序管理自动化的命令行脚本环境。1,到Python的安装目录下,进入到Scripts,发现有如下几个.exe,windows可执行文件,我们这里暂时只关注pip3.exe.2,键盘shift+鼠标右击,可以出现"此处打开Powershell窗口"3,进入到powershell中4,用pip3安装easygui模块,执行..原创 2021-01-09 09:48:41 · 871 阅读 · 0 评论 -
python3入门部分知识点理解
1,IDLE是什么?# IDLE is Python’s Integrated Development and Learning Environment.# IDLE是Python的集成开发和学习环境,可以利用它方便地创建、运行、测试# 和调试Python程序。2,#是什么?为什么后面跟的内容没有出现在运行结果里面?#是单行注释。注释是为了解释该部分代码是做什么的,辅助理解,并不参与运行3,那我要是多行注释怎么办?'''用3个单引号,注意是英文的单引号,不是中文的最前面原创 2021-01-08 16:47:19 · 342 阅读 · 0 评论 -
在windows10上写自己的第一个python代码
第一步:有的人安装python的时候,没有选择生成桌面快捷方式,可以在桌面左下角开始的位置打开第二步:在开始的所有程序里面找到python的IDLE,拖拽到桌面第三步:双击桌面的idle开始写自己的第一个python代码注意这里是单引号,代码解释:打印“我是小仙女张瑞”。第四步:保存运行保存:ctrl+s保存也可以,左上角的file里面有save也可以保存,保存到自己指定的目录中,我这里保存为:F:\zhangrui中,文件命名为first_code,文件默认后缀名为.p原创 2021-01-08 11:00:27 · 927 阅读 · 0 评论 -
python学习36:给IDLE添加行号(采用IDLEX的LineNumbers.py)python3.8也可以用(亲测有效)
1,下载这个链接我在360安全浏览器上有时打不开,我用ctrl+f5就可以打开了。链接是:http://idlex.sourceforge.net/extensions.html2,解压说明,如果谁喜欢用IDELX的话,就直接双击解压文件下的idlex文件就好,如下:如果喜欢IDLEX的话,直接用就是了,以下的内容不需要再阅读,但是我不喜欢这个界面,所以在py...原创 2019-03-22 18:59:14 · 15293 阅读 · 37 评论 -
linux(debian10)安装pip3方法,并修改安装源为国内源
找了好几个方法都没有用,唯独这个简单,而且有效。转载自:https://www.cnblogs.com/yanxiatingyu/p/10160712.htmlubuntu 下安装pip3在使用任何apt 安装任何软件包之前,建议用以下命令更新软件sudo apt update更新好了后可能会出现apt list --upgradable安装pip3sudo ...原创 2019-11-17 18:01:04 · 9028 阅读 · 1 评论 -
关于FileNotFoundError: [Errno 2] No such file or directory: '/home/guoyz/.Xauthority'问题的解决方法
写了个python代码,一运行,出现如下错误:guoyz@debian:~$ python3 readtxt.py Traceback (most recent call last): File "/home/guoyz/.local/lib/python3.7/site-packages/Xlib/xauth.py", line 43, in __init__ raw = o...原创 2019-11-10 22:12:53 · 4003 阅读 · 1 评论 -
(mqtt学习5)关于python(windows)通过mqtt和c(linux)交互的方案
先写个大概,有空再补全细节。 1,需求 就是python在windows上写个界面,通过mqtt发给linux,linux计算一下再发给python,拓扑呈现。 2, 采用方法 就是将python上得到的数据先存储到表格中,发布的时候再去读取。3,采用模块 通过mqtt发布,自然要用到mqtt的那个模块。 设计界面的话,我这边用的是...原创 2019-10-24 22:23:46 · 489 阅读 · 0 评论 -
在windows上修改python安装库国内源
只是为了自己方便,并无创新意思。1,资源管理器输入:%APPDATA%2,在里面新建一个pip的文件夹,里面添加一个pip.ini的文件,添加如下内容:[global]timeout=1000index-url=http://mirrors.aliyun.com/pypi/simple/[install]trusted-host=mirrors.aliyun.com还...原创 2020-04-19 14:20:50 · 919 阅读 · 0 评论 -
python tkinter 窗口最大化
转载自:https://blog.csdn.net/asdf54sdf/article/details/50495942?depth_1-utm_source=distribute.pc_relevant.none-task&utm_source=distribute.pc_relevant.none-task最近学习python,刚好学到了gui(tkinter)相关的知识,顺便...转载 2020-03-25 17:32:02 · 1148 阅读 · 0 评论 -
python学习47:debian9.8安装python3和pip3,并修改pip国内源
安装python3:gyz@debian:~$ sudo apt-get install python3安装pip3:gyz@debian:~$ sudo apt-get install python3-pip修改pip源:~下没有.pip文件夹,就新建一个,同样新建一个pip.conf文件,内容如下:gyz@debian:~/.pip$ pwd/home/...原创 2019-03-25 20:30:32 · 2954 阅读 · 0 评论 -
python学习46:更改pip的国内源教程(windows)
玩过linux的都知道,装完系统后,经常需要修改源(sources.list文件),windows上怕是很少修改源。1,打开目录2,新建文件夹pip在这里新建一个叫pip的文件夹。3,新建配置文件pip.ini在新建的pip文件夹里新建一个配置文件pip.ini切记,这个地方pip.ini的后缀名是ini,不能是.txt或者其他。所以在新建的时候,勾选如下这...原创 2019-03-25 15:22:06 · 1029 阅读 · 0 评论 -
python学习45:枚举类
枚举的作用就是为了在使用或者阅读某个变量时,可以一眼知道它代表的意思。from enum import EnumMonth = Enum('Month',('Jan','Feb','Mar','Apr','May','Jun','Jul','Aug','Sep','Oct','Nov','Dec'))for name,member in Month.__members__.items...原创 2019-03-25 13:31:45 · 994 阅读 · 0 评论 -
python学习44:使用__slots__限定对象的属性
python可以在运行期间,动态添加属性, __slots__可以限定对象的属性,不让随意添加,比如下面这个例子,就是限定了score,name属性,所以下面s1.score是成功的,s2.age就是失败的。(代码1)slots限定只对当前的类有效,对子类无效,如果想子类也有限定,需要子类里面去定义slots。(代码2)代码1:class Student(object): _...原创 2019-03-25 10:18:44 · 858 阅读 · 0 评论 -
python学习43:动态添加对象的属性和方法
一般来说,对象的属性和方法,在类(class)里面就写好了,直接用就是了,但是python允许在程序运行时动态添加,比如下面的例子,s1,s2,s4就是成功的例子,s3是个错误的例子。给对象s1添加name属性,添加setage()方法,都成功了;但是这个对s3不起作用,所以失败了。s2和s4,属性和方法都成功的原因是给类student添加了属性和方法,所以对实例化的两个对象s2和s4都...原创 2019-03-25 10:09:34 · 997 阅读 · 0 评论 -
python学习42:继承和多态的简单理解
继承,很好理解,就是子类继承了父类的特性。看1部分代码;多态,先比较代码的1部分和2部分,发现子类也有一个run()函数,但是最终调用的是子类的run()函数。如果子类觉得父类的run()函数不合适,就可以在子类里重写一个run()函数。这样子类就呈现出一种多态。3部分代码,进一步体现了多态的好处,定义一个函数,传入参数设置为Animal类型,就可以根据传入参数的变化而变化。4部分代...原创 2019-03-24 14:02:32 · 1456 阅读 · 0 评论 -
python学习41:类的公有变量和私有变量
student1是公有变量,可以在函数外修改变量,比如我写的right部分;student2是私有变量,但是不可以在函数外修改变量,比如我写的wrong部分;这里的私有变量,虽然可以复制,但是修改不了,打印结果,还是之前的赋值。student3是私有变量,但是可以在函数外修改变量,比如我写的can change 3部分。公有变量和私有变量的表面区别,就是在变量前加了两个下划线__...原创 2019-03-24 11:36:58 · 3508 阅读 · 0 评论 -
python学习40:为了减少代码的行数而出现的偏函数
偏函数就是告诉大家,某个函数的某个参数我要固定起来用了,减少了对函数的定义,但是多了一个functools.partial。我要吐槽一下这个功能。一般形式:def int2(s,base=8): return int(s,base)print(int2('123'))运行结果:============================= RESTART: E:/a...原创 2019-03-23 21:42:07 · 1303 阅读 · 0 评论 -
python学习39:返回函数,装饰器的简单应用
Python的返回函数就是指,函数返回的时候,是返回一个函数,比如下面这个例子是返回functionB。在返回函数的基础上,多一个@functionA,就编程了装饰器(decorator)。什么是装饰器,先看这个例子执行的结果。def FunctionA(f): def FunctionB(*args,**kw): print('call %s():',f.__na...原创 2019-03-23 20:41:48 · 1303 阅读 · 0 评论 -
python学习38:高阶函数,map和reduce的简单介绍
高阶函数就是把函数名(函数名本身也是变量)作为参数传入另外的函数中计算,传入的函数,可以是系统函数,也可以是自定义函数,如下:def AddAbs(x,y,f): return f(x)+f(y)z = AddAbs(-10,10,abs)print(z)def TestF(t): return t * tz = AddAbs(-10,10,TestF)...原创 2019-03-23 13:19:14 · 1395 阅读 · 0 评论 -
python学习37:生成器方式打印杨辉三角(两种方法)
下面两种方法差不多是一种思路,就是在后面“补0”,就是在要打印的列表使用yield返回去之后,在后面用append在后面加一个0,好利用杨辉三角的规律,list_new[i] = list_old[i-1] + list_old[i]的规律。[1]过渡[1] 0[1, 1]过渡[1, 1]0[1, 2, 1]过渡[1, 2, 1]0[1, 3, 3, 1]过渡[1, 3, 3...转载 2019-03-22 20:55:00 · 1523 阅读 · 0 评论 -
python学习35:列表生成器的简单使用
前文(列表生成式,缩短代码的行数)说到列表生成式,这篇说一下列表生成器(generator)。生成式和生成器的表面区别只是一个[ ],一个()。写C语言的都会非常注意内存问题,生成器的出现也是因为内存问题,生成式弄出来的列表,如果元素比较多,会占用非常大的一块内存,但是有时可能只用前几个元素,那就造成内存的浪费,此时生成器出现了,用多少元素,就给你生成多少元素出来。代码1:只是简单介绍一下...原创 2019-03-22 14:09:43 · 2369 阅读 · 1 评论 -
python学习34:列表生成式,缩短代码的行数
python有一个目的,就是一行能完成的东西,就不多行写。列表生成式子就很好的突出了这一点。算出10以内数的平方,比较原始的写法:l=[]for i in range(1,11): l.append(i*i)print(l)列表生成式的写法:l=[i*i for i in range(1,11)]print(l)效果是一样的,只是代码行数缩减了。=...原创 2019-03-22 11:58:51 · 1967 阅读 · 1 评论 -
python学习33:遍历列表,元组,字典,字符串
和c语言不同,c语言遍历数组,使用的是下标,而python不是。#遍历字典dict1 = {'a':1,'f':2,'c':3}#打印字典的keyfor key in dict1: print(key)#打印字典的value for value in dict1.values(): print(value)#打印字典的key和valuefor k,v in...原创 2019-03-22 11:32:33 · 2122 阅读 · 1 评论 -
python学习32:列表的切片(slice)操作(元组和字符串其实也可以)
听起来很别扭的名称,我觉得这个用法是借鉴matlab,其实就是:(冒号)。定义一个列表>>> list_num = ['a','b','c','d','e','f','g']打印列表>>> list_num['a', 'b', 'c', 'd', 'e', 'f', 'g']打印0,1,2,3,4,5号元素>>> list_...原创 2019-03-21 21:46:07 · 2673 阅读 · 1 评论 -
python学习31:函数设置默认参数
不需要设置默认参数的函数定义:def PersonInfo(name,gender,age,city)设置默认参数的函数定义:例1:def PersonInfo(name,gender,age=27,city='beijing'): print("name:",name) print('gender:',gender) print('age:',ag...原创 2019-03-21 17:18:55 · 1869 阅读 · 1 评论 -
python学习30:函数的参数个数可变
方法有两种:方法2比方法1好,因为如果多次变化参数个数的话,方法1意味着需要多次定义列表或者元组,太过麻烦。1,使用list(列表)或者tuple(元组)tup1 = (1,2,3,4,5,6)tup2 = (1,2,3)def CalcNum1(t): sum = 0 for n in t: sum = sum + n * n retur...原创 2019-03-21 16:49:25 · 2261 阅读 · 1 评论 -
python学习29:列表的增删改查
代码如下:languages = ['c','c++','shell','java','vb']print("original element\n",languages)print("first element is",languages[0])print("last element is",languages[-1])print("\n")##在末尾添加languages.a...原创 2019-03-21 14:11:48 · 2158 阅读 · 0 评论 -
python学习28:\与\\与%的区别
1,\除法,精确除法>>> 15/53.02,\\也是除法,只是不会有小数部分>>> 15//72>>> 15//62>>> 15//1413,%取余>>> 15%71>>> 15%132...原创 2019-03-21 13:38:58 · 8793 阅读 · 1 评论 -
python学习27:程序过长,换行编辑
print打印时,程序过长,可以使用以下方法换行编辑。方法1:使用\print("line1 \ line2 \ line3")结果:=================== RESTART: C:/Users/公有制/Desktop/test1.py ===================line1 line2 l...原创 2019-03-21 13:29:12 · 1875 阅读 · 0 评论 -
python学习26:input函数,程序运行时从键盘获取内容
使用input函数:代码1:print("please enter your name:")print(input())运行结果:=================== RESTART: C:/Users/公有制/Desktop/test1.py ===================please enter your name:guoyanzhangguoyanzh...原创 2019-03-21 13:02:05 · 2437 阅读 · 1 评论 -
python学习25:tkinter模块小练习(使用place设置控件位置)刷网页
tkinter官网链接:http://effbot.org/tkinterbook/程序目的:练习一下python图形界面,顺便刷一下网页。程序代码:import tkinterimport timeimport pyautoguiimport webbrowserimport xlrdclass APP: def __init__(self,master):...原创 2019-03-20 20:05:50 · 4279 阅读 · 0 评论 -
python学习24:读取excel单元格内容以及两个常见问题
我这里是python3,读取excel需要安装模块xlrd。(管理员权限运行cmd,执行pip.exe install xlrd)问题1:读取excel的内容,出现错误AttributeError: 'str' object has no attribute 'cell'原因是使用读取sheet内容的函数有错,正确的应该是按照索引值。正确如下:sheet1 = excel_fil...原创 2019-03-20 10:04:10 · 4705 阅读 · 7 评论 -
python学习23:打开关闭多个网页,刷浏览量
本篇博文是在我上篇博文的基础上更新的。这里有3个版本,版本2,3是改进的。版本1,如果要用我这个代码的话,希望url1-url4不要变,其他的改一下就好了。import webbrowserimport timeimport pyautoguiurl1 = 'https://blog.csdn.net/weixin_39465823/article/details/8866...原创 2019-03-19 15:05:21 · 1350 阅读 · 2 评论 -
python学习22:利用pyautogui模块控制鼠标键盘刷网页浏览量小程序
其实我这篇博文就是刷了一下csdn的浏览量。代码如下:import pyautoguiimport timetargetX1 = 600targetY1 = 300targetX2 = 600targetY2 = 400targetX3 = 600targetY3 = 500sleep_t = 1distance=10000def SelectBlog(y): ...原创 2019-03-19 13:26:48 · 1433 阅读 · 1 评论 -
python学习21:图形化界面(含windows下安装tkinter)
windows下python3.2版本之后是自动安装tkinter的,python3.3的引入方式为:>>> import _tkinter(我这里是错误的)>>> import tkinterPython 提供了多个图形开发界面的库,几个常用 Python GUI 库如下: Tkinter:Tkinter 模块(Tk 接口)是 Python...转载 2019-03-16 19:35:35 · 3093 阅读 · 5 评论