python读取bin文件
㈠ python将二进制数据的bin文件转换成16进制数组形式的C源文件
将二进制数据的bin文件转换成C语言数组的形式并保存为 .c 源文件
运行:
编辑一个bat批处理脚本文件,如下所示,双击该bat文件即可
python bin2c.py test.bin
pause
㈡ python怎么打开数据库文件
以打开mysql数据库为例来说明:
#!/usr/bin/python
import MySQLdb
# 打开数据库连接
db = MySQLdb.connect("localhost","testuser","test123","TESTDB" )
#打开游标
cursor = db.cursor()
# 执行数据库查询
cursor.execute("SELECT VERSION()")
# 获取结果集的第一行
data = cursor.fetchone()
print "Database version : %s " % data
# 关闭连接
db.close()
㈢ python如何生成1位图片bin
第一步,定义一个变量n1并赋值为987,调用bin函数将n1转换成二进制,
第二步,再次定义一个变量n2并赋值一个长整型,使用bin函数转换,第三步,如果传入的参数是一个逻辑值或是一个字符串,使用bin函数返回什么结果,第四步,定义一个列表变量n4,并进行赋值;然后调用bin函数,结果发现出现了报错,第五步,如果传入的参数是一个负数,使用bin函数转换之后,对应的结果也为负数,第六步,定义变量n6,并进行赋值为0,结果发现返回的值也是0,并且是二进制数,注意事项
注意python语言中的bin函数的用法
注意bin函数的传入参数和返回值
㈣ Python如何从文件读取数据
1.1 读取整个文件
要读取文件,需要一个包含几行文本的文件(文件PI_DESC.txt与file_reader.py在同一目录下)
PI_DESC.txt
3.1415926535
8979323846
2643383279
5028841971
file_reader.py
with open("PI_DESC.txt") as file_object:
contents = file_object.read()
print(contents)
我们可以看出,读取文件时,并没有使用colse()方法,那么未妥善的关闭文件,会不会导致文件收到损坏呢?在这里是不会的,因为我们在open()方法前边引入了关键字with,该关键字的作用是:在不需要访问文件后将其关闭
1.2文件路径
程序在读取文本文件的时候,如果不给定路径,那么它会先在当前目录下进行检索,有时候我们需要读取其他文件夹中的路径,例如:
㈤ 笨方法学python的习题十五的读取文件得怎么做
#!usr/bin/python
#-*-coding:utf-8-*-
fromsysimportargv
script,filename=argv
print("We'regoingtoarase%r."%filename)
#打印We'regoingtoarasetest.txt
print("Ifyoudon'twantthat,hitCTRL-C(^C).")
#打印Ifyoudon'twantthat,hitCTRL-C(^C).
print("Ifyoudowantthat,hitRETURN.")
#打印Ifyoudowantthat,hitRETURN.
input("?")
print("Openingthefile...")
#打印Openingthefile...
target=open(filename,"w")
#以写模式打开test.txt
#w代表写模式打开文件
#r代表读模式打开文件
#wr代表读写模式打开文件
#w+代表读写模式打开文件
#r+代表读写模式打开文件
#a+代表读写模式打开文件
print("Truncatingthefile.Goodbye!")
#打印Truncatingthefile.Goodbye!
target.truncate()
#清空text.txt文件
print("NowI'mgoingtoaskyouforthreelines.")
#打印NowI'mgoingtoaskyouforthreelines.
line1=input("line1:")
line2=input("line2:")
line3=input("line3:")
#输入line1/2/3内容
print("I'mgoingtowritethesetothefile.")
#打印I'mgoingtowritethesetothefile
target.write(line1)
target.write(" ")
target.write(line2)
target.write(" ")
target.write(line3)
target.write(" ")
#写入内容
print("Andfinally,wecloseit.")
#打印Andfinally,wecloseit.
target.close()
运行结果如下:
$pythonex16.pytest.txt
We'regoingtoerase'test.txt'.
Ifyoudon'twantthat,hitCTRL-C(^C).
Ifyoudowantthat,hitRETURN.
?
Openingthefile...
Truncatingthefile.Goodbye!
NowI'mgoingtoaskyouforthreelines.
line1:Toallthepeopleoutthere.
line2:IsayIdon'tlikemyhair.
line3:Ineedtoshaveitoff.
I'mgoingtowritethesetothefile.
Andfinally,wecloseit.
$
加分习题
①如果你觉得自己没有弄懂的话,用我们的老办法,在每一行之前加上注解,为自己理清思路。就算不能理清思路,你也可以知道自己究竟具体哪里没弄明白。
②写一个和上一个练习类似的脚本,使用 read 和 argv 读取你刚才新建的文件。
txt="lx0016jft.txt"
test=open(txt,"w")
test.truncate()
jftline1=input(">>>>>line1:")
jftline2=input(">>>>>line2:")
jftline3=input(">>>>>line3:")
jftline4=input(">>>>>line4:")
test.write(jftline1)
test.write(" ")
test.write(jftline2)
test.write(" ")
test.write(jftline3)
test.write(" ")
test.write(jftline4)
test.write(" ")
test.close()
test=open("lx0016jft.txt")
print(test.read())
这里在打印的时,必须得重新打开一次文档,网络查到的解释是,传送的数据还在内存中,并没有写入进文档,只有重新打开后,读取打印才能看到写入修改后的内容。
③文件中重复的地方太多了。试着用一个 target.write() 将 line1, line2, line3 打印出来,你可以使用字符串、格式化字符、以及转义字符。
[python]view plain
test.write(jftline1+" "+jftline2+" "+jftline3+" "+jftline4+" ")
④找出为什么我们需要给 open 多赋予一个 'w' 参数。提示: open 对于文件的写入操作态度是安全第一,所以你只有特别指定以后,它才会进行写入操作。
如果你用 'w' 模式打开文件,那么你是不是还要 target.truncate() 呢?阅读以下 Python 的 open 函数的文档找找答案。
target.truncate() 是清空的意思,与“w”模式并不冲突,也并非后置条件。
常见问题回答
如果用了 'w' 参数, truncate() 是必须的吗?
看看加分习题 5。
'w' 是什么意思?
它只是一个特殊字符串,用来表示文件的访问模式。如果你用了 'w' 那么你的文件就是写入(write)模式。除了 'w' 以外,我们还有 'r' 表示读取(read), 'a' 表示追加(append)。
还有哪些修饰符可以用来控制文件访问?
最重要的是 + 修饰符,写法就是 'w+', 'r+', 'a+' ——这样的话文件将以同时读写的方式打开,而对于文件位置的使用也有些不同。
如果只写 open(filename) 那就使用 'r' 模式打开的吗?
是的,这是 open() 函数的默认工作方式。
㈥ 如何用python读取文本中指定行的内容
这里写个简单的,用readline即可实现,命令行带入参数1为读取的文件名,参数2为需要读取的行数。需要读取多行,你可以简单改改,例如参数带个列表,程序内用eval转化为数组之类的方法。
importsys
filename=sys.argv[1]
linenum=int(sys.argv[2])
withopen(filename,'r')asf:
line=f.readline()
n=1
whileline:
iflinenum==n:
printline
break
else:
line=f.readline()
n+=1
㈦ python文件名获取文件路径
概述
使用os.path.abspath()函数来获取文件绝对路径
解析
文件目录结构如下:
os.path.abspath(path)返回path规范化的绝对路径(但这个路径不一定是真实的路径),如果path仅是一个文件名,使用该函数后返回的路径是当前工作目录路径连接改文件名后所组成的新的路径名。
>>> import os.path
>>> os.path.abspath("a.py")
'C:\Users\Administrator\a.py'
os.path.split(path)将path分割成目录和文件名二元组返回
>>> os.path.split("C:\Users\Administrator\a.py")
('C:\Users\Administrator', 'a.py')
os.path.dirname(path)返回path的目录,其实就是os.path.split(path)的第一个元素
>>> os.path.dirname("C:\Users\Administrator\a.py")
'C:\Users\Administrator'
os.path.basename(path)返回path最后的文件名。如果path以/或结尾,就会返回空值。即os.path.split(path)的第二个元素。
>>> os.path.basename("C:\Users\Administrator\a.py")
'a.py'
os.path.commonprefix(list)返回list中所有path共有的最长的路径,从左向右,相同字符。
os.path.exists(path)如果path存在,返回True;如果path不存在,返回False。
os.path.isabs(path)如果path是绝对路径,返回True。
os.path.normpath(path)规范path字符串形式(规范文件路径)
os.path.isfile(path)判断路径是否为文件,是返回True,否则返回False
os.path.isdir(path)如果path是一个存在的目录,返回True,否则返货False。
os.path.islink(path)是否是链接;但如果系统不支持链接,则返回False。
㈧ 如何能够使用python3读取二进制的.bin文件
您好。 将其导入ultra edit,里面有导出二进制文件选项 有各最简单的方法,windows其实自带了一个这样的工具exe2bin.exe在运行里输入cmd打开msdos方式,里面输入 c:\>exe2bin /? 就可以查看一下这个命令的方式,比如 c:\>exe2bin c:\a.exe b.bin...