Haste makes waste

(持续更新中ing)实用小代码及遇到的坑(1)

Posted on By lijun

汇集一些实用小代码,和自己走过的那些坑,供自己不时参考。

1. 抽取xls中的sheet名

在python shell 中執行

>>> import xlrd
>>> book = xlrd.open_workbook('C:\\Users\\utane\\Desktop\\2017-08-15\\data.xlsx')
>>> sheet_names = book.sheet_names()
>>> for sheet in sheet_names:
	print(sheet)

斷行顯示所有的sheet名

2. 將上述抽取的sheet名寫入xls文件並保存

>>> import xlwt
>>> resultBook = xlwt.Workbook()
>>> resultSheet = resultBook.add_sheet('result')
>>> for i in range(len(sheet_names)):
	resultSheet.write(i+1,1,sheet_names[i])
>>> resultBook.save('C:\\Users\\utane\\result.xls')

3. ‘name’ not in globals

KeyError: "'__name__' not in globals"错误

(myvenv) C:\Users\utane\djangoproject\mysite>python manage.py shell
Python 3.6.0 (default, Jan 23 2017, 17:35:20) [MSC v.1900 32 bit (Intel)] on win
32
Type "help", "copyright", "credits" or "license" for more information.
(InteractiveConsole)
>>> from .models import tool1,tool2
Traceback (most recent call last):
  File "<console>", line 1, in <module>
KeyError: "'__name__' not in globals"
>>> from tools.models import tool1,tool2

  • from .models import tool1,tool2,是在tools这个app中引入的,models与views在一个文件夹,用 . 表示当前文件夹的models,故可以找到。
  • 但是如果在django的shell中执行的话,需要明确告诉Django,位于哪个app中,即修改为: from tools.models import tool1,tool2

4. import keyword; print(keyword.kwlist) 可以打出所有的关键字

5. R Notebook中中文显示

将文件以 File -> Reopen with encoding 选择UTF-8之后再打开,完全解决notebook中中文乱码,输出的html的也能正确显示中文。

6. ESXi中获取驱动等信息 esxcfg-info | less