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...