Python学习笔记(五)

一、Unicode与str

s1 = u"这是什么字符串"
s2 = unicode ("这是什么字符串", "utf-8")
print s1
print s2
s3 = "这是什么字符串"
print s3
su = "这是什么字符串"
u = s3.decode ("utf-8")  # s3被解码为Unicode对象,赋值给u
sg = u.encode ("gbk")  # u被编码为gbk格式的字符串,赋值给sg
print sg
s4 = "这是什么字符串"
s4.decode ('utf-8').encode ('gbk')
print s4
这是什么字符串
这是什么字符串
这是什么字符串
����ʲô�ַ���
这是什么字符串
二、直接使用content(字节码),记得把encoding设置正确

import requests
url = "http://xxx.xxx.xxx"
response = requests.get(url)
response.encoding = 'gbk'
print response.text
三、字典创建  while开关 字典添加   字典寻找
dictionary = {}
flag = 'a'
pape = 'a'
off = 'a'
while flag == 'a' or 'c' :
    flag = raw_input("添加或查找单词 ?(a/c)")
    if flag == "a" :                             # 开启
        word = raw_input("输入单词(key):")
        print word
        defintion = raw_input("输入定义值(value):")
        print defintion
        dictionary[str(word)] = str(defintion)  # 添加字典
        print "添加成功!"
        pape = raw_input("您是否要查找字典?(a/0)")   #read
        if pape == 'a':
            print dictionary
        else :
            continue
    elif flag == 'c':
        check_word = raw_input("要查找的单词:")  # 检索
        for key in sorted(dictionary.keys()):            # yes
            if str(check_word) == key:
                print "该单词存在! " ,key, dictionary[key]
                break
            else:                                       # no
                off = 'b'
        if off == 'b':
            print "抱歉,该值不存在!"
    else:                               # 停止
        print "error type"
        break
四、时间表示
%y 两位数的年份表示(00-99)
%Y 四位数的年份表示(000-9999)
%m 月份(01-12)
%d 月内中的一天(0-31)
%H 24小时制小时数(0-23)
%I 12小时制小时数(01-12)
%M 分钟数(00-59)
%S 秒(00-59)
%a 本地简化星期名称
%A 本地完整星期名称
%b 本地简化的月份名称
%B 本地完整的月份名称
%c 本地相应的日期表示和时间表示
%j 年内的一天(001-366)
%p 本地A.M.或P.M.的等价符
%U 一年中的星期数(00-53)星期天为星期的开始
%w 星期(0-6),星期天为星期的开始
%W 一年中的星期数(00-53)星期一为星期的开始
%x 本地相应的日期表示
%X 本地相应的时间表示
%Z 当前时区的名称
%% %号本身
import time

ticks = time.time ()
print '当前时间戳为:', ticks
localtime = time.localtime(time.time())
print '本地时间:', localtime
localtime = time.asctime(time.localtime(time.time()))
print '本地时间:', localtime
# 格式化成2016-03-20 11:45:39形式
print time.strftime("%Y-%m-%d %H:%M:%S %Y", time.localtime())
# 格式化成Sat Mar 28 22:24:24 2016形式
print time.strftime("%A %B %d %H:%M:%S %Y", time.localtime())
当前时间戳为: 1500780655.45
本地时间: time.struct_time(tm_year=2017, tm_mon=7, tm_mday=23, tm_hour=11, tm_min=30, tm_sec=55, tm_wday=6, tm_yday=204, tm_isdst=0)
本地时间: Sun Jul 23 11:30:55 2017
2017-07-23 11:30:55 2017
Sunday July 23 11:30:55 2017

获取某月的日历:

import calendar
cal = calendar.month(2017, 7)
print cal
     July 2017
Mo Tu We Th Fr Sa Su
                1  2
 3  4  5  6  7  8  9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
31
五、def()函数
def printme(str):
    "打印任何传入的字符串"
    print str
    return
printme("我要调用用户自定义函数!")
我要调用用户自定义函数!
传不可变对象
def ChangeInt(a):
    a = 5
b = 6
ChangeInt(b)
print b
6
传可变对象
实例中传入函数的和在末尾添加新内容的对象用的是同一个引用
调用函数内部输出再调用外部输出,py的函数和c的不一样可以直接改变外部的列表,这是py的函数用的是引用传递
def ChangeMe(list1):
    list1.append([1,2,3,4]);
    print '函数内取值:', list1
    return
list = [34,35,36];
ChangeMe(list)
print '函数外取值:', list
函数内取值: [34, 35, 36, [1, 2, 3, 4]]
函数外取值: [34, 35, 36, [1, 2, 3, 4]]
六、关键字参数顺序不重要
ef printinfo(name,age=35):
    print "name:",name
    print "age:",age
    return
printinfo(age=34,name="Ashling")
printinfo(name="ashling")
name: Ashling
age: 34
name: ashling
age: 35











你可能感兴趣的:(Python)