
Python
dr.xun
迭代
展开
-
使用Tkinter实现GUI窗口App
一、Tkinter简明教程请参考:https://zhuanlan.zhihu.com/p/75872830https://docs.python.org/3/library/tkinter.html二、简单实现from tkinter import *from tkinter import messageboxclass App(Frame): """GUI应用程序""" def __init__(self, master=None): super().__原创 2021-06-27 16:16:57 · 372 阅读 · 0 评论 -
利用try-except-finally关闭资源
我们在写python程序的时候,会可能会遇到一些不可预料的情况,运行时抛异常程序便会崩溃。Python提供了检测处理异机制,用于捕获异常以增加代码的健壮性。python程序的异常可以通过 try 语句来检测.,任何在 try 语句块里的代码都会被监测,检查有无异常发生。try 语句有两种主要形式:try-except 和 try-finally。这两个语句是互斥的,也就是说只能使用其中的一种 。一个 try 语句可以对应一个或多个 except 子句,但只能对应一个finally 子句,或是一个..原创 2021-05-15 18:46:20 · 490 阅读 · 0 评论 -
window下python3安装redis客户端
一、下载python redis文件路径:redis · PyPI二、执行安装命令pip install redis-3.5.3-py2.py3-none-any.whl三、测试原创 2021-05-14 16:47:03 · 376 阅读 · 0 评论 -
window上升级pip版本
一、管理员权限打开cmd二、执行升级命令python -m pip install --upgrade pip原创 2021-05-14 16:14:07 · 996 阅读 · 0 评论 -
并发模型2之accept+thread
一、特性每次连接对应一个线程,为一个客户提供服务,具有多线程、阻塞I/O、擅长长连接、利用多核特性、顺序执行等特点。缺点:由于操作系统支持的线程数有限,伸缩性受线程数限制。二、Python实现from SocketServer import BaseRequestHandlerfrom SocketServer import ThreadingTCPServerclass EchoHandler(BaseRequestHandler): def handle(self):原创 2021-04-04 10:57:13 · 157 阅读 · 0 评论 -
并发模型1之accept+fork
一、特性每次连接fork一个进程,为客户提供服务,具有多进程、阻塞I/O、擅长长连接、利用多核特性、顺序执行等特性。适合场景: 1. 连接数不大 2. 计算响应的工作量远大于fork()的开销 3. 需要长连接二、Python实现from SocketServer import BaseRequestHandler, TCPServerfrom SocketServer import ForkingTCPServer, ThreadingTCPServer...原创 2021-04-04 10:46:54 · 164 阅读 · 1 评论 -
并发模型0之accept+read/write
一、特性一次只能给一个客户提供服务,属于I/O阻塞、顺序执行。它是并发模型的原子流程,各类并发实现,都是在此基础上实现原子流程的多路复用。二、Python实现import socketdef handle(client_socket, client_addr): while True: data = client_socket.recv(4096) if data: sent = client_socket.send(da原创 2021-04-04 10:12:26 · 178 阅读 · 0 评论 -
Python序列解包
一、什么是序列解包?它是Python3.0提供的语法糖,有助于简化代码、更好的理解代码。如下例子:>>> x,y,z = (1, 2, 3)>>> x1>>> y2>>> z3>>> 二、序列解包的简单用法1. 用于列表、元组# 列表>>> a, b, c = [12, 34, 56]>>> a12>>> b34&g原创 2021-03-28 23:27:00 · 2304 阅读 · 0 评论 -
列表-list(Python)
range:推导式创建序列原创 2020-06-14 15:35:48 · 161 阅读 · 0 评论 -
数字运算符(Python)
原创 2020-06-14 15:13:53 · 452 阅读 · 0 评论 -
可变字符串(Python)
import ioa = "test txt"sio = io.StringIO(a)print(sio.getvalue())sio.seek(4)sio.write("abc")print(sio.getvalue())结果:test txttestabct原创 2020-06-14 15:09:04 · 367 阅读 · 0 评论 -
字符串格式化(python)
a = "名字是:{0},年龄是:{1}"print(a.format("xunye", 18))b = "名字是:{name}, 年龄是:{age}"print(b.format(name = "xunye", age=18))输出:原创 2020-06-14 15:02:02 · 198 阅读 · 0 评论 -
Python之类的创建
class TheThing(object): """ __init__ 函数 用于创建内部变量 """ def __init__(self): self.number = 0 def some_fuction(self): print("I got called.") def add_me_up(self, more)...原创 2020-04-01 21:59:55 · 202 阅读 · 0 评论 -
Python之函数定义和用法
函数的作用:1. 它们给代码片段命名,就跟“变量”给字符串和数字命名一样。2. 它们可以接受参数,就跟你的脚本接受 argv 一样。3. 通过使用 #1 和 #2,它们可以让你创建“微型脚本”或者“小命令”。函数定义的规则:函数代码块以def关键词开头,后接函数标识符名称和圆括号()。 任何传入参数和自变量必须放在圆括号中间。圆括号之间可以用于定义参数。 函数的第一行语句可...原创 2020-01-18 20:41:15 · 394 阅读 · 0 评论 -
Python,exists判断文件是否存在
命令 exists:文件名字符串作为参数,如果文件存在的话,它将返回 True,否则将返回 False。# -- coding: utf-8 --from sys import argv # 导入函数或者模块from os.path import exists(script, from_file, to_file) = argv # 解包print("Cop...原创 2020-01-18 20:11:50 · 9632 阅读 · 1 评论 -
python 文件操作
close – 关闭文件。 read – 读取文件内容。可以把返回结果赋给一个变量。 readline – 读取文本文件中的一行。 truncate – 清空文件。 write(stuff) – 将 stuff 写入文件。# -- coding: utf-8 --from sys import argv # 把用到的东西(argv)从这个东西存放的模块(argv)中...原创 2020-01-17 22:31:09 · 433 阅读 · 0 评论 -
Python,open、read和close文件
两种输入:1、解包2、input# -- coding: utf-8 --from sys import argv(script, filename) = argvtxt = open(filename)print("Here's your file %r:" % filename)print(txt.read())txt.close()print("T...原创 2020-01-17 21:47:47 · 370 阅读 · 0 评论 -
Python组合使用参数和input获取更多的输入
用作信件的模板,变量由输入控制。# -- coding: utf-8 --from sys import argv(script, user_name) = argvprompt = '>'print("Hi %s, I'm %s script." % (user_name, script))print("I'd like to ask you a few quest...原创 2020-01-12 21:36:34 · 303 阅读 · 0 评论 -
Python获取输入的方法之参数
参数、解包、变量# -- coding: utf-8 --from sys import argv # import 将 python 的模组(modules)sys 引入脚本(arg0, arg1, arg2, arg3) = argv # 把 argv 中的东西解包(unpack),将所有的参数依次赋予左边的变量名print("The script is called...原创 2020-01-12 21:04:32 · 858 阅读 · 0 评论 -
python3获取程序的输入——input()
程序交互:输入、输出用法一:input()# -- coding: utf-8 --print("How old are you?")age = input()print("How tall are you?")height = input()print("How much do you weight?")weight = input()print("So, you'r...原创 2020-01-12 20:45:54 · 704 阅读 · 0 评论 -
Python字符串文本处理
表示:双引号""或单引号''格式化:%s格式化多个变量:(变量1,变量2,...,变量n)x = "There are %d types of people." % 10binary = "binary"do_not = "don't"y = "Those who know %s and those who %s." % (binary, do_not)print(x)...原创 2020-01-10 22:10:46 · 254 阅读 · 0 评论 -
Python格式化输出
把%后面的内容按照位置往前面的%s位置放数据(%s 占位字符串,%d占位数字)# -- coding: utf-8 --my_name = 'Zed A. Shaw'my_age = 35 # not a liemy_height = 74 # inchesmy_weight = 180 # lbsmy_eyes = 'Blue'my_teeth = 'White'my_...原创 2020-01-08 23:31:50 · 182 阅读 · 0 评论 -
一段关于序列操作的代码
#coding=utf-8L = [123, "xunye", 'ab']print(L)print(len(L))print(L[0])print(L[:-1])L += [4, 5, 6]print(L) L.append('NI')print(L) print(L.pop(2))print(L) #L.sort()#print(L) S = ["cc...原创 2019-12-08 22:30:18 · 243 阅读 · 0 评论 -
python之help()
help()函数用于查看函数或模块用途的详细说明。>>> import time>>> help(time)Help on built-in module time:NAME time - This module provides various functions to manipulate time values.DESCRIPT...原创 2019-11-02 22:34:09 · 374 阅读 · 0 评论 -
if语句
一般格式:if 判断条件: 执行语句else: 执行语句================================================================================================================if 判断条件1: 执行语句1elif 判断条件2: 执...原创 2018-08-24 20:25:14 · 184 阅读 · 0 评论 -
Python列表
最为通用序列操作列表没有固定类型约束,且没有固定的大小。边界检查,超出列表的索引范围总会导致错误。嵌套,实现矩阵列表解析表达式——来自集合的概念说明:把矩阵M的每个row中的row[1],放在一个新的列表中。...原创 2018-07-30 22:03:15 · 177 阅读 · 0 评论 -
列表的修改——range()
>>> L = [1, 2, 3, 4, 5]>>> for i in range(len(L)): L[i] += 10 >>> L[11, 12, 13, 14, 15]另一种修改方式>>> L = [x + 10 for x in L]>>> L[21, 22, 23原创 2018-10-01 19:53:41 · 478 阅读 · 0 评论 -
字符串格式化表达式
两种实现方式:1、字符串格式化表达式——基于C语言的“printf”模型【'%'格式化表达式】【注】字符串具有不可变性,格式化总是返回新的字符串作为结果,而不对左侧的字符串进行修改。更高级的字符串格式化表达式转换目标的通用结构: %[(name)][flags][width][.precision]typecode基于字典的字符串表达式通过键(key)来...原创 2018-08-05 14:20:56 · 840 阅读 · 0 评论 -
文件类型操作
调用内置的open函数。文件的内容都是字符串。原创 2018-07-30 22:08:10 · 180 阅读 · 0 评论 -
元组
属性:序列,不可变性,支持任意类型,具有完整性约束语法:括号()支持混合的类型和嵌套,但不能增长或缩短。原创 2018-07-30 22:07:31 · 139 阅读 · 0 评论 -
字典——其实与Json的格式相似
字典不是序列,是一种映射。通过键(key)来存储其他对象,通过键简单的映射到值。键具有唯一性。字典的创建方式Python中的垃圾回收机制,一个对象如果是最后一次的引用被移除,该对象的空间会被立即回收。键的排序:for循环新的实现方式for和while的语法:不存在的键,if测试,在使用键之前,需判断一下该键值是否存在。if else...原创 2018-07-30 22:06:37 · 4083 阅读 · 0 评论 -
Python寻求帮助
dir函数查看属性:其中S是字符串上面显示说明:以双下划线开头并结尾的变量名是用来表示Python实现细节的命名模式; 没有下划线的属性是字符串对象能够调用的方法。查看上述方法的用法,将这些方法传递给help函数模式匹配,导入re模块(作用搜索、分割和替换)...原创 2018-07-30 22:01:18 · 605 阅读 · 0 评论 -
Python的模块导入和重载
1、import 文件名(not .py) # import是语句 >>> import xxxx.py2、再次运行文件 reload函数 >>> from imp import reload >>> reload(xxxx)3、exec运行模块文件(文件重载,每次运行都是最新版本) ...原创 2018-07-30 21:59:38 · 1774 阅读 · 1 评论 -
三重引号编写多行字符串块——块字符串
格式:"""......"""作用:1、在程序中输入多行文本。(eg:HTML、XML、错误信息) 2、文档字符串 3、用于废除一些代码(黑客风格)。【在一段代码前和后都加三重引号"""】 字符串的基本操作:1、*操作符进行重复——操作符重载2、字符串相连>>> 'abc' + 'def''a原创 2018-08-03 21:36:57 · 3411 阅读 · 0 评论 -
Python字符串——不可变序列
Python中没有单个字符,只有字符串(单个字符也是字符串)字符串是序列的代表。空字符串——''或""常见字符串表达式和字符串常量支持正则表达式:import re——模块字符串合并——‘+’组成元组:在字符串间加了‘,’raw字符串抑制转义:Windows中有字母r。注意raw字符串不能以单个的反斜杠结尾。...原创 2018-08-03 19:52:02 · 3805 阅读 · 0 评论 -
Python的编写、运行方式
1、dos交互提示模式:通过cmd,进入dos。敲入python命令(前提是安装好Python,并配置好环境)。每个命令在输入Enter后会立即运行。作用(好处):体验Python语言(实验)和在编程测试编写的程序(测试)。2、系统命令行和文件(永久性保存)在文件中写入代码,文件称为模块。集成开发环境:编写工具,支持UTF-8的编辑器【+】shell命令行窗口后者d原创 2017-11-25 21:04:46 · 743 阅读 · 0 评论 -
列表与字典
一、列表——有序的集合,通过偏移获取值列表的属性: 1、支持数字、字符串及其他列表 2、可变性,可变长度、异构及任意嵌套 3、任何对象的有序集合 4、通过偏移读取 5、对象引用数组列表的帮助信息查找方法: 1、Python标准手册 2、help(list) or dir(list)查看list方法的完整列表清单。列表的部分表达与操作:...原创 2018-08-05 15:32:07 · 3653 阅读 · 0 评论 -
Python的动态类型
在Python中,类型由运行中决定。>>> a = 3其中:a为变量名,3为变量的值,也可以称为对象;变量a只是对值为3的对象的引用。 该变量a没有类型,所谓的变量类型只存在于3,也就是对象中。 由此,可以理解Python是动态类型语言,变量具有多态性。变量a的赋值操作过程:变量和对象保存在内存的不同部分,并通过连接(引用)相关联。...原创 2018-08-01 21:17:34 · 1054 阅读 · 0 评论 -
文件
在Python中文件是种数据类型,属于内置对象。内置open函数创建一个Python文件对象,通过该对象可以访问外部文件。文件对象是常见的处理任务输出模块。常见文件运算'r'——读文件,'w'——写文件,'a'——追加写文件'b'——二进制数据处理,'+'——读写模式打开文件基础语法: 1、文件迭代器是最好的读取行工具 2、内容是字符串,不是对象 3、c...原创 2018-08-10 20:46:26 · 142 阅读 · 0 评论 -
iter()——迭代器
一、文件对象就是自己的迭代器,即文件有自己的__next__操作。>>> f = open('E:\Python\hello.py')>>> iter(f) is fTrue>>> f.__next__()'#!/usr/bin/env python3\n'二、列表以及多数其他内置对象,不是自身的迭代器。对于这些对象,要使用迭...原创 2018-10-01 19:43:17 · 6200 阅读 · 0 评论