sublime 自定义注释

标 签:

    使用sublime的时候,有没有在什么地方加几行代码,然后得标注一下什么时候改过的,谁改过的,所以要注释一下.

    如果每次手动写,很麻烦,有没有一种方法自动生成,肯定是有的.方法如下:

    1.首先得新建一个 snippert ,可以理解为注释模板吧,路径为菜单栏上的 tools->developer->new snippet,会打开一个新

页面,注意的是保存文件名要以 .sublime-snippet 的后缀才行, 里面有如下代码:

<snippet>
 <content><![CDATA[
Hello, ${1:this} is a ${2:snippet}.
]]></content>
 <!-- Optional: Set a tabTrigger to define how to trigger the snippet -->
 <!-- <tabTrigger>hello</tabTrigger> -->
 <!-- Optional: Set a scope to limit where the snippet will trigger -->
 <!-- <scope>source.python</scope> -->
</snippet>

    里面主要的配置有两项:

        CDATA[],这里面就是你的注释模板,

        <!-- <tabTrigger>hello</tabTrigger> --> 这项是触发的快捷键

    我的配置如下,也可以自己修改自己喜欢的:

<snippet>
 <content><![CDATA[
  \/*****@Start***@MaWei:${1:f7}*****${2}**********@Start*********\/
  \/*****@End*****@MaWei:${1:f7}*****${2}**********@End*******\/
]]></content>
 <!-- Optional: Set a tabTrigger to define how to trigger the snippet -->
 <tabTrigger>des</tabTrigger>
 <!-- Optional: Set a scope to limit where the snippet will trigger -->
 <!-- <scope>source.python</scope> -->
</snippet>

    复制的时候把反斜杠去了,在想要注释的地方输入des然后回车或者tab都行,就会生成这个注释模板了,然后按F7,生成当前时间

在生成时间这个地方,我参考了很多少地方,都没有找到很少的解决方法,网上都是这么写的,应该是自动生成的,

可不知道我就是没有办法自动生成,得按快捷键才行,如果有那个大神知道,可以告诉我一下,QQ:1123265518.

    2.生成时间的方法为新建一个sublime 的插件,在菜单栏上的 tools->developer->new plugin,在里面添加如下代码:

import datetime, getpass
import sublime, sublime_plugin
class AddDateTimeStampCommand(sublime_plugin.TextCommand):
    def run(self, edit):
        self.view.run_command("insert_snippet", { "contents": "%s" %  datetime.datetime.now().strftime("%Y-%m-%d %H:%M:%S") } )
class AddDateStampCommand(sublime_plugin.TextCommand):
    def run(self, edit):
        self.view.run_command("insert_snippet", { "contents": "%s" %  datetime.datetime.now().strftime("%Y-%m-%d") } )
class AddTimeStampCommand(sublime_plugin.TextCommand):
    def run(self, edit):
        self.view.run_command("insert_snippet", { "contents": "%s" %  datetime.datetime.now().strftime("%H:%M:%S") } )

然后点击保存,名字随便.但名字后缀为.py

    3.最后是添加快捷键,打开自定义快捷键配置, Preferences->key bludings,在里面添加如下:

{ "keys": ["f7"], "command": "add_date_time_stamp" },

 注意前面一条是否有,号结尾.

Python / 评 论 (0) / 热度 (253℃) / 2018-11-28 / 阅读全文  / MaWei

sublime 快捷键插入当前时间

标 签: wamp

    在使用sublime开发的时候,有时候要注释一下开发时间,用手写有点坑,所以就想怎么用快捷生成,费话不多说,方法如下:

    1.添加一个插件,在菜单栏选择, tools->developer->new plugin,然后会打开一个页面,在里面输入如下代码:(注意保存文件时,后缀名为.py)

import sublime
import sublime_plugin
import time
version_format_time = "%Y-%m-%d %H:%M:%S"
version_format_day = "%Y-%m-%d" 
version_pattern = "[0-9]{4}\-[0-9]{2}\-[0-9]{2}_[0-9]{2}\.[0-9]{2}\.[0-9]{2}"
class insert_datetimeCommand(sublime_plugin.TextCommand):
  def run(self, edit):
    sels = self.view.sel()
    for sel in sels:
      if not self.view.find_all(version_pattern):
        self.view.replace(edit, sel, time.strftime(version_format_time))
        return
      region = sublime.Region(0, self.view.size())
      results = self.view.find_all(version_pattern)
      for result in results:
        self.view.replace(edit, result, time.strftime(version_format_time))

class InsertDateCommand(sublime_plugin.TextCommand):
    def run(self, edit):
        sel = self.view.sel();
        for s in sel:
            self.view.replace(edit, s, time.strftime(version_format_day))

    2.添加快捷键,也是在菜单栏选择, Preferences->key bludings,打开一个自定义快捷键,在里面的 [ ] 里面添加如下代码:

 { "keys": ["f5"], "command": "insert_datetime" },
 { "keys": ["f6"], "command": "insert_date" },

    要注意的是,如果里面有,添加在最尾行的时候,前面一行后面有没有,号,如果没有得加上,不然就报错了,

    这个设置的快捷键为 F5 ,F6,F5为时间到秒, F6为时间到天,如果需要改成最它快捷键,自己改.

Python / 评 论 (0) / 热度 (105℃) / 2018-07-20 / 阅读全文  / MaWei

django模板标签。

标 签: pythondjango

django模板标签

1.if/else,if/else在模板上的使用格式:

    格式1:

{% if false|true %}
   show content
{% endif %}

    格式2:

{% if false|true %}
   show content
{% else %}
    show content
{% endif %}

    要注意点:1.使用{% if %}的时候,一点注意空格,不能靠着%号,{%这两个字符中间不是有空格,后面也一样。if和判断条件表达式中间有空格。

                   2.表达式支持 or(或),and(与),not(非),注意的是,支持单个多次,例:a and b and c,中间用空格隔开。不是支持多个多次,如: a and b or c这个是不支持的,因为里面不支持()。如果有需求,可以嵌套使用。

                   3.最要注意的是,一定要有 {% endif %} 结束。不然你就悲剧了。

2.for,for就是迭代,说的通俗一点,就是循环,(费话,谁不知道啊),不费话,直接说for在模板上使用格式:

{% for a in b %}
  show content
{% endfor %}

{% for a in b %}
  show content
{% empty %}//支持为空时,显示
  empty
{% endfor %}

同时,标签for还几个属性方法,可以调用, forloop.counter表式当前迭代到第几个,forloop.revcounter表达迭代还剩余的个数,注意,他们都是整数。forloop.first,第一个,forloop.last最后一个,注意他们是布尔值,例如,迭代到最后一个时,forloop.last为真,forloop.first表示迭代第一个为真。


Python / 评 论 (0) / 热度 (367℃) / 2017-03-06 / 阅读全文  / MaWei

python文件操作函数

标 签: python

python文件操作函数,python open函数用法

1.python文件操作常用函数:

output = open(r'D:\test','w')   #创建输出文件('w' 写入,'r'读写,'a'文件末尾追加)
input = open('data',r)或 open('data's) #创建输入文件
aString = input.read() #把整个文件当成一个字符串
aString = input.read(N) #读取N个字符当成一个字符串
aString = input.readline() #读取下一行包括行末标识符成一个字符串
aList = input.readlines() #读取整个文件到字符串列表
output.write(aString) #写入字符串到文件
output.writelines(aList)#把列表中所有的字符串写入文件
output.close()#手动关闭
output.flush()#把输出缓冲区写入硬盘中,但不关闭文件
anyFile.seek(N)#修改文件位置到偏移量N处后进行下一操作
for line in open('data'): use line #文件迭代一行一行的读
open('t.txt',encoding='latin-1') #Python 3.0 Unicode 文本文件(str字符串)
open('t.bin','rb') #Python 3.0二进制byte文件(bytes字符串)

2.版本区别:

    1.open('t.txt','w').write('aaa'):2.x版本是没有返回值,3.x版本会返回写入的字符数;

3.注意:

    

Python / 评 论 (0) / 热度 (87℃) / 2017-03-06 / 阅读全文  / MaWei

django request的属性,用法

标 签: pythondjango


django request 详解 - Python Django 学习笔记8

1.首先先了解 URL 的对象 HttpRequest 的一些常用属性方法:

    a. request.path 除域名以外的请求路径,以正斜杠开头.

    b. request.get_host() 主机名(比如,通常所说的域名.

    c. request.get_full_path() 请求路径,可能包含查询字符串.

    d. request.is_secure() 如果通过HTTPS访问,则此方法返回True, 否则返回False.

    e. request.META 是一个Python字典,里面有如下属性:

            1.HTTP_REFERER,进站前链接网页,如果有的话.(请注意,它是REFERRER的笔误.)

            2.HTTP_USER_AGENT,用户浏览器的user-agent字符串,如果有的话.

            3.REMOTE_ADDR客户端IP,如果申请是经过代理服务器的话,那么它可能是以逗号分割的多个IP地址,如:"211.162.78.1,211.162.78.3".

            用法如:request.META['HTTP_REFERER'].

2. 注意,当你访问的键不存在时,会触发一个KeyError异常。因为 HTTP header信息是由用户的浏览器所提交的,是可以伪造的,因些可以艇以下的两种为法解决:

    a.可以使用 try/except 语句:

def test_request(request):
    try:
        req = request.META['HTTP_USER_AGENT']
    except KeyError:
        req = 'unkown'
    return HttpResponse("Your browser is %s" % req)

    b.可以使用Python字典的 get() 方法来处理这些可能不存在的键:

def test_request(request):
    req = request.META.get('HTTP_USER_AGENT', 'unknown')
    return HttpResponse("Your browser is %s" % req)

3. 当然最要注意是,在使用 request 前,先要导入一个 HttpRequest 对象:

from django.http import HttpResponse


Python / 评 论 (0) / 热度 (124℃) / 2017-03-06 / 阅读全文  / MaWei

python的一些常用的函数

标 签: python

Python常用列表函数详解

1. append 在列表的尾部追加元素:

num = [0, 1, 2, 3]
num.append(4)
print number
[0, 1, 2, 3, 4]

2. insert在列表中插入元素:

num.insert(3, 5)
print num
[0, 1, 2, 5, 3, 4]

3. extend合并两个列表:

a = [1,2,3]
b = [4,6,7]
a.extend(b)
print a #结果:[1,2,3,4,6,7]
print b #结果:[4,6,7]
# 注意,extend的只有一个参数,也就是说他其实是一个添加操作,在一个列表里面加入另一个列表

4. index取得元素的索引值:

a = [1,2,3]
print a.index(3)  #结果: 2

5.len返回列表的长度,即元素的个数:

 a = [1,2,3,4]
 print len(a)  #结果: 4

6.in是一个布尔操作符,它测试左边的操作数是否包含于列表:

a = [1,2,3,4]

1 in a #结果:True

7. del删除列表中的元素:

# 索引
a = [1,2,3,4]
del a[1]
print a #结果:[1,3,4]

a = [1,2,3,4]
del a[1:3]
print a #结果:[1,4]


<<<<待续……

Python / 评 论 (0) / 热度 (83℃) / 2017-03-06 / 阅读全文  / MaWei

python的string类里面的函数列表和解释

标 签: python

Python String详解

string类里面的函数列表如下:

  1. find 函数(查找一个字符串在不在别一个字符串里面,找到就返回索引,没有找到返回 -1)

import string

#找出‘py’第一次出现的索引
index = string.find('www.phpyrb.com', "py")
print (index)   #结果:6

#表明从哪开始搜寻子串
index = string.find('www.phpyrb.com', "py",2)
print (index)   #结果:6

#确定寻找字符串的索引范围
index = string.find('www.phpyrb.com', "py",2,6)
print (index)   #结果:-1 

    2. string.lowercase 所有小写的英文字母

import string

print string.lowercase #结果 abcdefghijklmnopqrstuvwxyz
     3. string.uppercase 所有大写的英文字母
import string

print string.uppercase #结果 ABCDEFGHIJKLMNOPQRSTUVWXYZ


     4. string.digits 从0到9的数字
import string

print string.digits #结果 0123456789


<<<<待续……

Python / 评 论 (0) / 热度 (104℃) / 2017-03-06 / 阅读全文  / MaWei

django如何连接mysql,django如何安装mysql

标 签:


django如何连接mysql

1.django 连接 mysql 之前先要安装 MySQLdb.

2.如何你还没有安装 MySQLdb,可以用如下的命令安装:

easy_install MySQLdb

3.如何确定 mysqldb 安装成功,可以用如下方法:

python
import MySQLdb

如何没有报错的话,那恭喜你,你安装成功了,如何没有,请重复上面的步骤.

还可以用pip安装,安装命令:

pip install pymysql

如果是window上,要找到python的安装目录下找到script目录里面,用

pip.exe install pymysql

这个是python 2.x 和 python 3.x都可以用,推荐使用这个,这个最新python添加上去的。

4.django 连接 mysql 的原代码如下:

import MySQLdb

def __init__(self):
    db = MySQLdb.connect(user='root', db='mydb', passwd='', host='localhost')
    cursor = db.cursor()
    cursor.execute('SELECT name FROM mydb')
    names = [row[0] for row in cursor.fetchall()]
    db.close()


Python / 评 论 (0) / 热度 (528℃) / 2017-04-12 / 阅读全文  / MaWei

12