python指令碼執行出現語法錯誤:
indentationerror: unindent does not match any outer indentation level
一般出現這樣問題的原因是:沒有對齊,中間穿插有空格和tab鍵。
所以python對格式要求是很嚴格的。
匯入redis模組
已經安裝過python redis模組了,但在匯入redis模組,執行時出現如下的問題
>>> runfile('d:/python/connectredistest.py', wdir='d:/python')
traceback (most recent call last):
file "", line 1, in
file "d:\anzhuang\anaconda\lib\site-packages\spyderlib\widgets\externalshell\sitecustomize.py", line 682, in runfile
execfile(filename, namespace)
file "d:\anzhuang\anaconda\lib\site-packages\spyderlib\widgets\externalshell\sitecustomize.py", line 71, in execfile
exec(compile(scripttext, filename, 'exec'), glob, loc)
file "d:/python/connectredistest.py", line 7, in
import redis
importerror: no module named redis
已經安裝了,但仍提示沒有相應的模組,redis模組是從網上下的redis-2.9.1,但不是最新的redis-2.10.3
使用的安裝時python setup.py install
網上提到的刪除模組有python setup.py uninstall ,但這種方法,不能刪除。
刪除python已安裝的模組使用的指令是:
pip install 模組名字
如 pip uninstall redis
3.1 連線本地redis庫
以下是一段連線本地redis資料庫的測試**
import redis
class
database:
def__init__
(self):
self.host = 'localhost'
self.port = '6379'
self.db = '1'
# self.password = ''
defwrite
(self, website,city,year,month,day,deal_number):
try:
key='_'.join([website,city,str(year),str(month),str(day)])
val=deal_number
r=redis.strictredis(host=self.host, port=self.port)
r.set(key, val)
except exception, exception:
print exception
defread
(self, website, city, year, month, day):
try:
key='_'.join([website, city, str[year], str[month], str[day]])
r=redis.strictredis(host=self.host, port=self.port)
value=r.get(key)
print value
return value
except exception, exception:
print exception
if __name__=='__main__':
db=database()
db.write('meituan', 'beijing', 2015,7,26,8000)
db.read('meituan', 'beijing', 2015,7,26)
但執行的結果見下,
『type』 object has no attribute 『getitem』
原因:read函式key='_'.join([website, city, str[year], str[month], str[day]])與write函式的key='_'.join([website,city,str(year),str(month),str(day)])不一樣
所以出現了上述問題,應該保持一致。
3.2 連線伺服器redis庫import redis
class
database:
def__init__
(self):
self.host = '10.10.21.21'
self.port = 6379
self.db = 1
self.password = 123456
defwrite
(self, website,city,year,month,day,deal_number):
try:
key='_'.join([website,city,str(year),str(month),str(day)])
val=deal_number
r=redis.strictredis(host=self.host, port=self.port)
r.set(key, val)
except exception, exception:
print exception
defread
(self, website, city, year, month, day):
try:
key='_'.join([website, city, str[year], str[month], str[day]])
r=redis.strictredis(host=self.host, port=self.port)
value=r.get(key)
print value
return value
except exception, exception:
print exception
if __name__=='__main__':
db=database()
db.write('meituan', 'beijing', 2015,7,26,8000)
db.read('meituan', 'beijing', 2015,7,26)
執行出現如下的錯誤
>>> runfile('d:/python/connectredistest.py', wdir='d:/python')
noauth authentication required.
noauth authentication required.
正確的**時見下:
import redis
class
database:
def__init__
(self):
self.host = '10.10.21.21'
self.port = 6379
self.db = 1
self.password = 123456
defwrite
(self, website,city,year,month,day,deal_number):
try:
key='_'.join([website,city,str(year),str(month),str(day)])
val=deal_number
r=redis.strictredis(host=self.host, port=self.port, db=self.db, password=self.password) ##修改
r.set(key, val)
except exception, exception:
print exception
defread
(self, website, city, year, month, day):
try:
key='_'.join([website, city, str[year], str[month], str[day]])
r=redis.strictredis(host=self.host, port=self.port, db=self.db, password=self.password) ##修改
value=r.get(key)
print value
return value
except exception, exception:
print exception
if __name__=='__main__':
db=database()
db.write('meituan', 'beijing', 2015,7,26,8000)
db.read('meituan', 'beijing', 2015,7,26)
Python學習 學習筆記(一)
python是什麼?人們為和使用python python的缺點 如今誰在使用python 流行的p2p檔案分享系統bitjorrent是乙個python程式。eve online這款大型多人網路遊戲 massively multiplayer online game,mmog 廣泛地使用pytho...
python學習學習筆記一
1,python 是完全物件導向的語言。在python中一切都是物件,函式 模組 字串等都是物件。2,資料型別 數字,字串,列表,元組,字典 數字型 整型 浮點型 布林型 非零即真 複數型 int x float x 型別轉換 非數字型 字串 列表 元祖 字典 list 元祖 元祖轉列表 tuple...
Python學習筆記 一
python學習筆記 一 關鍵知識點 1 程式列印輸出使用print語句 2 使用print輸出字串時,字串內容不帶引號。而使用字串變數名輸出時,字串內容由引號括起來 3 在python 解析器中下劃線 表示最後乙個表示式的值 4 重定向輸出符合為 5 程式中需要輸入時,實用raw input 內建...