2015年12月3日星期四

Python基础备忘(一)

Python备忘

dateformat

关于dateformat的使用,有以下例子,最后有官方的directive列表,方便查询;
from datetime import datetime, date, timedelta
date_format = "%Y-%m-%dT%H:%M:%S.%fZ"
start = datetime.strftime(date.today() - timedelta(days=29), date_format)

获取当天日期对象,使用datetime中的date.today();
如果想在当前日期基础上前进或后退时间的话,可以使用datetime的timedelta,例如上例就是获取当天日期的前29天的日期对象;
datetime中的strftime将日期转为str;strptime将str转为时间;
下面是dateformat的directive列表:
DirectiveMeaningExampleNotes
%aWeekday as locale’s abbreviated name.
Sun, Mon, ..., Sat (en_US);
So, Mo, ..., Sa (de_DE)
(1)
%AWeekday as locale’s full name.
Sunday, Monday, ..., Saturday (en_US);
Sonntag, Montag, ..., Samstag (de_DE)
(1)
%wWeekday as a decimal number, where 0 is Sunday and 6 is Saturday.0, 1, ..., 6
%dDay of the month as a zero-padded decimal number.01, 02, ..., 31
%bMonth as locale’s abbreviated name.
Jan, Feb, ..., Dec (en_US);
Jan, Feb, ..., Dez (de_DE)
(1)
%BMonth as locale’s full name.
January, February, ..., December (en_US);
Januar, Februar, ..., Dezember (de_DE)
(1)
%mMonth as a zero-padded decimal number.01, 02, ..., 12
%yYear without century as a zero-padded decimal number.00, 01, ..., 99
%YYear with century as a decimal number.1970, 1988, 2001, 2013
%HHour (24-hour clock) as a zero-padded decimal number.00, 01, ..., 23
%IHour (12-hour clock) as a zero-padded decimal number.01, 02, ..., 12
%pLocale’s equivalent of either AM or PM.
AM, PM (en_US);
am, pm (de_DE)
(1), (2)
%MMinute as a zero-padded decimal number.00, 01, ..., 59
%SSecond as a zero-padded decimal number.00, 01, ..., 59(3)
%fMicrosecond as a decimal number, zero-padded on the left.000000, 000001, ..., 999999(4)
%zUTC offset in the form +HHMM or -HHMM (empty string if the the object is naive).(empty), +0000, -0400, +1030(5)
%ZTime zone name (empty string if the object is naive).(empty), UTC, EST, CST
%jDay of the year as a zero-padded decimal number.001, 002, ..., 366
%UWeek number of the year (Sunday as the first day of the week) as a zero padded decimal number. All days in a new year preceding the first Sunday are considered to be in week 0.00, 01, ..., 53(6)
%WWeek number of the year (Monday as the first day of the week) as a decimal number. All days in a new year preceding the first Monday are considered to be in week 0.00, 01, ..., 53(6)
%cLocale’s appropriate date and time representation.
Tue Aug 16 21:30:00 1988 (en_US);
Di 16 Aug 21:30:00 1988 (de_DE)
(1)
%xLocale’s appropriate date representation.
08/16/88 (None);
08/16/1988 (en_US);
16.08.1988 (de_DE)
(1)
%XLocale’s appropriate time representation.
21:30:00 (en_US);
21:30:00 (de_DE)
(1)
%%A literal '%' character.%

发送HTTP请求

使用urllib2,POST例子:
import urllib2
requrl = 'https://something.com/post_something'
headers = {'Content-Type': 'application/json'}
req = urllib2.Request(requrl, datastr, headers)
Get例子:
import urllib2
data = urllib2.urlopen("https://something.com/get_something").read()
print data

使用json

使用json解析json数据:
params = {
        "startTime": 1,
        "endTime": 1,
        "timeIncrement": "day",
        "timeMultiple": 1,
        "descending": False,
        "base": 1,
        "counter": 1
    }
datastr = json.dumps(params)#将json对象转换为str
datajson = json.loads(datastr)#将str转为json


没有评论:

发表评论