Python 备忘&技巧收藏

python实现十六进制转十进制 用python实现十六进制转十进制 阅读详情

1、中文注释 

#coding:gbk或#coding:utf-8或##-*- coding : gbk -*-


2、浮点数转换为十六进制:

>>> struct.pack("<f", 238.3).encode('hex')
'cd4c6e43'

3、十六进制转换为浮点数

>>> import struct
>>> struct.unpack('!f', '41973333'.decode('hex'))[0]
18.899999618530273
>>> struct.unpack('!f', '41995C29'.decode('hex'))[0]
19.170000076293945
>>> struct.unpack('!f', '470FC614'.decode('hex'))[0]
36806.078125
或者
from ctypes import *

def convert(s):
    i = int(s, 16)                   # convert from hex to a Python int
    cp = pointer(c_int(i))           # make this into a c integer
    fp = cast(cp, POINTER(c_float))  # cast the int pointer to a float pointer
    return fp.contents.value         # dereference the pointer, get the float

print convert("41973333")    # returns 1.88999996185302734375E1

print convert("41995C29")    # returns 1.91700000762939453125E1

print convert("470FC614")    # returns 3.6806078125E4

4、读写excel

读:

# -*- coding:utf-8 -*-

import xlrd

# 打开workbook
workbook = xlrd.open_workbook("2.xlsx")

# 抓取所有sheet页的名称
worksheets = workbook.sheet_names()
print ("worksheet is %s" %worksheets)

# 选择第一表格
worksheet_1 = workbook.sheets()[0]
# 或者 worksheet_1 = workbook.sheet_by_index(0)

'''
# 遍历所有worksheet对象
for worksheet_name in worksheets:
    worksheet = workbook.sheet_by_name(worksheet_name)
'''

# 遍历sheet1的所有行row
nrows = worksheet_1.nrows
for cur_row in range(nrows):
    if cur_row == 0:
        continue
    row = worksheet_1.row_values(cur_row)
    print("row%s is %s" %(cur_row, row))

# 遍历sheet1的所有列 col
ncols = worksheet_1.ncols
for cur_col in range(ncols):
    if cur_col == 0:
        continue
    col = worksheet_1.col_values(cur_col)
    print("col%s is %s" %(cur_col, col))

# 遍历sheet1的所有单元格cell
for rown in range(nrows):
for coln in range(ncols):
cell = worksheet1.cell_value(rown,coln)
print cell

# 获取单元格中值的类型
cell_type = worksheet1.cell_type(rown,coln)
print cell_type
写:

#coding=utf-8

import xlwt

# 创建workbook和sheet对象
workbook = xlwt.Workbook()
sheet1 = workbook.add_sheet("sheet1", cell_overwrite_ok=True)
sheet2 = workbook.add_sheet("sheet2", cell_overwrite_ok=True)

# 向sheet页中写入数据
sheet1.write(0,0,"a111")
sheet1.write(0,1,"a222")

sheet2.write(0,0,"b111")
sheet2.write(1,0,"b222")

5、文件重命名、

#coding:utf-8

import os
import os.path

# 获得当前路径
curdir = os.getcwd()
print curdir

# 获得当前路径下的所有文件 文件夹
filelist = os.listdir(curdir)
print filelist

# 遍历所有对象
for files in filelist:
    # 如果是 rename.py 则跳过,不执行重命名
    if files == 'rename.py':
        continue

    # 原来文件路径
    olddir = os.path.join(curdir,files)
    print "old dir is "+olddir
    # 判断是否文件夹,是则跳过
    if os.path.isdir(olddir):
        print "is a folder ; continue"
        continue
    # 文件名
    filename = os.path.splitext(files)[0]
    # 文件类型
    filetype = os.path.splitext(files)[1]
    print "old name = "+filename
    print "old type = "+filetype

    # 新名称
    newdir = os.path.join(curdir, "123" + filetype)
    # 重命名
    os.rename(olddir, newdir)


6、面向对象

参考文章:http://www.cnblogs.com/dolphin0520/archive/2013/03/29/2986924.html


面向对象的三大特性:封装 继承 多态

类以及类中的方法在内存中只有一份,而根据类创建的每个对象都在内存中需要保存一份。

在python中,假如在属性名前加 2个下划线"__",则表明该属性是私有属性,否则为公有属性。(公有私有方法同理)

例如:访问私有属性需要类中访问

class People:
	__name = "Benjamin"
	__age = 20
	
	def show_name(self):
		print self.__name
	
	def get_name(self):
		return self.__name

p = People()
print p.__name	#错误
print p.__age	#错误
p.show_name()	#正确
print p.get_name()	#正确


python类中有一些内置方法:

__init__(self, ...) 构造方法,支持重载,若没有定义,系统自动执行默认构造方法

__del__(self) 析构方法,支持重载,不需要显式调用

其他__cmp__(),__len()__等,可参考文章http://www.cnblogs.com/simayixin/archive/2011/05/04/2036295.html


7、

list有一个append方法,可以增加元素。以l这个列表为例,调用的方法是:l.append(1024)

删除list中的某一个元素,要用到del l[0]

list有两类常用操作:索引(index)和切片(slice)。

l[-1]表示l中的最后一个元素。

l[-3]表示倒数第3个元素。


8

httplib实现了http和https客户端请求,但urllib和urllib2对httplib进行了更上层的封装。


9

UnicodeDecodeError: ‘ascii’ code can’t decode byte 0xef in position 7: ordinal 
not in range(128) 

分析:路径存在中文,ASCII无法编码

解决方法: 在Python27/lib/site-packages下建立文件 sitecustomize.py,内容如下:

import sys

sys.setdefaultencoding('gb2312')

setdefaultencoding是设置python系统默认编码,gbk也可试试。

python实现简单的备忘录系统 源码 // python3实现 ''' 备忘录系统 1.类与类之间的调用 2.循环和分支 3.类的建立与使用 分析:控制台实现 基本功能:1.查询 2.创建 3.修改 4.删除 5.退出 1.主程序类 2.功能实现类 属性: 列表容器 标题 内容 ''' # 1.主程序类 class Text: # 备忘录的存放容器 list_note=[] def __init__(self): 阅读详情

相关推荐

Python毕业设计基于Django的个人记账理财备忘录和提醒系统 Echats可视化

这个系统基于python语言设计并实现了备忘记账系统。本系统的主要内容包括:系统首页,个人中心,用户管理,记账信息,记账类型,备忘信息,系统管理等。在这篇文章中,首先,文章对备忘会计系统管理技术的发展背景与发展状况进行了简单的描述。接着,按照软件的一般开发过程,首先,要为该系统选择一种适合自己的语言和一个开发平台,之后,在对需求进行分析的基础上,来确定一个模块,并对其进行了设计。接着,在此基础上,以系统整体功能模块的设计为依据,来绘制出系统的功能模块图,流程图和E-R图。

Q_6310855的博客 1222

[Python] struct.unpack() 用法详解

Python的struct.unpack()函数用于解析二进制数据,通过格式字符串定义数据类型和字节顺序。格式字符串包含两部分:字节顺序字符(如&lt;小端、&gt;大端)和数据类型字符(如i表示整数、f表示浮点数)。使用示例包括解析整数、字符串和混合类型数据,需注意缓冲区长度匹配和字节顺序。常见错误有缓冲区不匹配和解析错误。该函数常用于处理二进制协议和文件格式。

极客不孤独的博客 2849

matplotlib三维画图之观察博弈论混合策略下纳什均衡点

参考链接: 博弈论入门20讲之第16讲-猜谜游戏-散户如何赢庄家 游戏背景: 我的期望是: 你的期望是: 使用Python的matplotlib画图: import numpy as np import matplotlib.pyplot as plt from mpl_toolkits.mplot3d import Axes3D fig = plt.figure() ax = Axes3D(fig) X = np.linspace(0, 1, 100) Y = np.linspace(0, 1,

敲代码的小风 1257

Python struct.unpack常用格式字符

对象表示的打包的二进制数据。它返回一个元组,包含根据格式字符串解析后的值。格式字符串由格式字符组成,这些字符指定了待解析数据的类型和字节顺序。是 Python 标准库中。模块的一个函数,用于解析由。

YHKKun的博客 1487

C语言练习题:据说一个人的标准体重应该是其身高(单位:厘米)减去100、再乘以0.9所得到的公斤数。已知市斤的数值是公斤数值的两倍。现给定某人身高,请你计算其标准体重应该是多少?

题目内容: 据说一个人的标准体重应该是其身高(单位:厘米)减去100、再乘以0.9所得到的公斤数。已知市斤的数值是公斤数值的两倍。现给定某人身高,请你计算其标准体重应该是多少?(顺便也悄悄给自己算一下吧……) 输入格式: 输入第一行给出一个正整数H(100 &lt; H ≤ 300),为某人身高。 输出格式: 在一行中输出对应的标准体重,单位为市斤,保留小数点后1位。 输入样例: 169 输出样例: 124.2 代码如下: #include&lt;stdio.h&gt; int main() { i

weixin_44877226的博客 2万+

模型量化必知:Per-Tensor和Per-Channel到底怎么选?

本文深入解析了模型量化中Per-Tensor与Per-Channel两种核心策略的抉择。Per-Tensor量化实现简单、硬件兼容性极佳,适合激活值或分布均匀的权重;而Per-Channel量化精度更高,能更好地处理权重分布不均的卷积层,是现代CNN权重量化的主流。文章提供了从硬件平台、数值分布到精度需求的实战决策框架,并推荐了“权重Per-Channel,激活Per-Tensor”的混合量化最佳实践。

assembly8low的博客 983

python-小数点保留位数问题

看了之后发现所有四舍五入都有点问题 https://blog.csdn.net/chenmozhe22/article/details/81666831

qq_38959934的博客 233

技术文档的语言表达:简洁、准确与易懂的平衡艺术

技术文档的语言表达不仅要简洁、准确,还需要能够打破技术壁垒,使不同背景的读者都能理解。这是一项需要技巧和经验的工作,它要求技术作者既要具备扎实的专业知识,又要具备清晰的表达能力。通过不断打磨语言的简洁性、准确性和易懂性,我们能够创造出一份高质量的技术文档,让知识的传递不再受限于语言的障碍。

人心有反复,好在山水有重逢。 4677

Python中二进制数据处理模块struct使用

Python中没有二进制类型,但是可以使用string字符串类型来存储二进制数据,然后使用struct模块来对二进制数据进行处理。下面将详细描述如何使用struct模块来处理二进制数据。 使用struct.pack把一个整数值打包成字符串,打开Python命令行,输入: >>>import struct >>> a =0x01020304 >>> str= struct.pack("I",

勤能补拙 1万+

CANOe实战指南 - 从入门到精通的全流程解析

本文是CANOe实战指南,全面解析从入门到精通的全流程。内容涵盖CANOe软件的核心功能仿真、测试与分析,详细指导安装配置、工程创建、CAN信号收发、UDS诊断通信、CAPL自动化编程以及Panel面板设计。通过实战案例,帮助汽车电子工程师快速掌握这一行业标杆工具,构建自动化测试环境,提升开发与测试效率。

pear55的博客 573

裂缝二维检测:裂缝的长度和宽度检测

这一节,我们需要去整合一下前面的代码,在进行长度和宽度的测量时,需要裂缝的类型、个数、面积的帮助。这一章是本专栏的核心部分。以上代码我均试过,由于本人能力有限,看不懂代码,最终还是没有采用,使用的是最普通检测宽度的方法,即求得骨架总长度后,用总面积求取平均宽度。

m0_62919535的博客 4237

Python备忘录工具:创建自己的备忘录应用

在本文中,创建了一个功能强大的Python备忘录应用,该应用允许用户轻松添加、查看、编辑和删除备忘录条目。使用了Python的Tkinter库来构建图形用户界面(GUI),使用户能够直观地与应用程序交互。通过这个示例,可以学到如何使用Python创建一个简单而实用的备忘录应用,以及如何处理GUI界面、数据存储和用户交互。可以根据自己的需求扩展这个应用,添加更多功能,使其更符合你的个人或工作需求。更多Python学习内容:ipengtao.com干货笔记整理100个爬虫常见问题.pdf ,太全了!

涛哥聊Python 1952

智能化教育改革中的教师角色转变:AI应用架构师如何设计“人机协同”系统?

个性化与规模化的矛盾:如何用AI实现规模化的个性化学习,同时保留教师的“人文温度”?自动化与自主性的矛盾:如何用AI自动化流程(如批改),同时避免教师沦为“AI操作工人”?数据驱动与经验驱动的矛盾:如何平衡AI的“数据决策”与教师的“经验决策”,避免“算法偏见”或“经验固化”?在智能化教育改革中,教师始终是教育的核心——AI系统是“辅助工具”,而非“替代者”。

小白菜的博客 1269

针对初学者,5个必备的 Python 备忘单

近年来随着数据科学的出现,Python 的重要性成倍增加,它已成为数据科学和开发的主要编程语言,具有独特、灵活、语法非常简单并且拥有强大的社区等特点。一些全球知名的应用程序如 BitTorrent、DropBox 和 YouTube 等都在使用 Python 来实现它们的功能。 什么是备忘单? 虽然 Python 相对比较简单,但我们不可能记住关于它的所有内容。最有经验的开发人员也很容易忘记如何对列表进行切片、为正则表达式创建各种字符类或创建循环。 这就是 Python 备忘单发挥作用的地方。这些备忘单为初

Python学习与数据挖掘 1265

锂电池充电器电路设计 里面有电路

锂电池充电器电路设计 里面有电路 3.7V升压到5V电路设计。

汉书HE8,好用的汇编代码编写工具

汉书HE8,好用的汇编代码编写工具早期编写汇编代码所用功能强大

Python 学习个人备忘录

   标题学习python那么久,总有记不住的东西,到用时到处找,实是不智。思索良久,刚才脑中闪现,在优快云留个备忘,方便用时查找。

m0_57158496的博客 3870

android 蓝牙通讯demo

android 下蓝牙通讯demo,实现了发现蓝牙,使能蓝牙,通过蓝牙发送消息。

设计模式Python版 备忘录模式

介绍了GOF设计模式中的备忘录模式,以及用Python实现备忘录模式的示例。

分享、交流、合作 1745

jre9下载 jdk9

(Java SE Runtime Environment 9.0) 9.0u175 官方最新版 【x86|x64】

Python讲解:备忘录模式

备忘录模式的主要目的是保存一个对象的内部状态,以便在将来可以恢复到这个状态。通过引入备忘录对象,客户端可以在不破坏封装性的前提下,捕获和恢复对象的状态。备忘录对象通常包含一个或多个属性,用于存储对象的状态信息。首先,定义一个Originator类,表示文本编辑器。该类负责创建和恢复备忘录对象。")接下来,定义一个Memento类,用于存储文本编辑器的状态。备忘录对象是一个不透明的对象,外部对象无法直接访问其内部数据。然后,定义一个Caretaker类,用于管理备忘录对象。

软件架构师笔记 925

备忘录模式(python)

备忘录模式:在不破坏封装性的前提下,捕获一个对象的内部状态,并在该对象之外保存这个状态。这样以后就可将该对象恢复到原先保存的状态。 跟原型模式很像,不过在原型模式中保存对象的一切,而备忘录模式中只保存恢复时需要的数据。 #encoding=utf-8 # #by panda #备忘录模式 def printInfo(info): print unicode(info, 'u

ponder008的专栏 1997

【Python笔记-设计模式】备忘录模式

设计模式,Python语言描述,备忘录模式

木子家有小可爱的博客 996

python中factorial什么意思,什么是备忘录,如何在Python中使用备忘录?

I just started Python and I've got no idea what memoization is and how to use it. Also, may I have a simplified example?解决方案Memoization effectively refers to remembering ("memoization" → "memorandum" ...

weixin_42494160的博客 891

chatgpt赋能python:Python建立简明备忘录指南:提高工作效率

本文由chatgpt生成,文章没有在chatgpt生成的基础上进行任何的修改。以上只是chatgpt能力的冰山一角。作为通用的Aigc大模型,只是展现它原本的实力。对于颠覆工作方式的ChatGPT,应该选择拥抱而不是抗拒,未来属于“会用”AI的人。🧡AI职场汇报智能办公文案写作效率提升教程 🧡专注于AI+职场+办公方向。下图是课程的整体大纲下图是AI职场汇报智能办公文案写作效率提升教程中用到的ai工具。

tutan123321的博客 246

【python设计模式】19、备忘录模式

例如,在一个游戏中,我们可以使用备忘录模式来保存玩家的状态,以便在需要时恢复它们,或者在玩家离线时自动保存状态。备忘录模式(Memento Pattern)是一种行为型设计模式,它允许在不破坏对象封装性的前提下,捕获对象的内部状态并在对象之外保存该状态,以便在需要时恢复对象的状态。总之,备忘录模式的哲学思想是,保存和恢复对象状态的能力对于软件设计来说非常重要,它可以帮助我们更好地管理对象的状态,并提高软件的可维护性和可靠性。订单状态的保存和恢复:在电商网站中,订单状态的保存和恢复可以使用备忘录模式来实现。

Htojk的博客 1061

Python编码系列—Python备忘录模式:掌握对象状态保存与恢复技术

在软件编程中,能够保存和恢复对象的状态是一个常见需求,尤其是在需要实现撤销(Undo)功能的场景中。备忘录模式(Memento Pattern)允许在不破坏封装的前提下,捕获并保存一个对象的内部状态,并且可以恢复到先前的状态。本文将深入探讨Python中的备忘录模式,包括其背景、原理、使用场景、代码实现和实际应用案例。备忘录模式是一种行为型设计模式,用于在不破坏对象的封装性的前提下,保存和恢复对象的状态。这种模式通常用于实现撤销功能,允许用户对操作进行回滚。

u013889591的专栏 1122

python 每日一练(备忘录)

python 每日一练(备忘录) 话不多说,上代码: #!usr/bin/python # coding=utf-8 import hashlib import os import os.path import codecs import time def registe(): #登录和注册 a=(time.strftime("%H:%M:%S", time.localtime()))...

weixin_46750784的博客 274

用Python开发的带有备忘录、天气信息的日历

本项目是采用Python语言开发的、带有备忘录、天气信息的日历。主要有以下功能:日历功能:本项目的日历能够查看当天或指定日期的农历信息、节假日信息、二十四节气和星座信息,也可以根据自己的需要进行修改天气功能:本项目可以定位从而实时展示当地当天的天气状况,包括以下信息:备忘录功能:本项目具备备忘录功能,在添加备忘录后,备忘录会根据相应时间展示在看板上。可以对备忘录进行增删查改_init_.py入口GUI.pyUI天气农历备忘录。

weixin_63870922的博客 464
上一篇: FIFO_笔记
下一篇: TLS_笔记
benjamin721
博客等级 码龄14年 18粉丝 63原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值