學習筆記:python3,代碼。小例子習作(2017)


 http://www.cnblogs.com/qq21270/p/7634025.html  學習筆記:python3,一些基本語句(一些基礎語法的代碼,被挪到這里了)

 

 

 

日期和時間操作

http://blog.csdn.net/ibiao/article/details/78067497  time與datetime

http://www.cnblogs.com/shhnwangjian/p/6117602.html  python 時間類型和相互轉換

# -*- coding: utf-8 -*-
# coding=utf-8
import time
from datetime import datetime   #這個要from引用,否則 datetime.fromtimestamp 會報錯
dt = time.time()        # 獲取當前的時間戳         1507384502.2770934
t0 = time.gmtime()       # 將時間戳轉換成結構化時間元組(UTC時區)倫敦時區    time.struct_time(tm_year=2017, tm_mon=10, tm_mday=7, tm_hour=14, tm_min=0, tm_sec=39, tm_wday=5, tm_yday=280, tm_isdst=0)
t1 = time.localtime()    # 將時間戳轉換成結構化時間元組(UTC+8時區)北京時區      time.struct_time(tm_year=2017, tm_mon=10, tm_mday=7, tm_hour=22, tm_min=0, tm_sec=39, tm_wday=5, tm_yday=280, tm_isdst=0)
print(dt)
print(t0)
print(t1)
print(datetime.fromtimestamp(dt))           #2017-10-07 22:00:39.674642
print(time.strftime('%Y-%m-%d %H:%M:%S'))   #2017-10-07 22:00:39
print(time.gmtime(1498488176.3209014))  #time.struct_time(tm_year=2017, tm_mon=6, tm_mday=26, tm_hour=14, tm_min=42, tm_sec=56, tm_wday=0, tm_yday=177, tm_isdst=0)

 

def __str2time(s):      #一個字符串轉換為datetime的時間函數
    t = time.strptime(s,'%Y-%m-%d %H:%M:%S')
    return datetime(*t[:6])

s = __str2time("2017-9-29 22:10:15")
print(s)           #2017-09-29 22:10:15 <class 'datetime.datetime'>

 

# 計算起止時間
import time, random
start = time.time()
time.sleep(random.random())
end = time.time()
print('runs %0.5f seconds.' %(end - start))
print('runs %0.2f seconds.' %(end - start)) #取小數點后2位
print('runs %0.1f seconds.' %(end - start))

 

t1 = time.strftime("%Y-%m-%d %H:%M:%S", time.localtime())  #日期格式化
print(t1)

 

 

 

讀文件、寫文件

#讀文件
f = open("c:\\1.txt","r")
lines = f.readlines()
for line in lines:
   print( line)

#寫文件
f = open("c:\\1.txt","r+")
f.write("123")#寫入字符串
#每運行一次,追加一下更改時間
import time
from datetime import datetime
try:
    f = open('1.txt', 'r+')
    sss = f.read()
    print(sss)
    t2 = datetime.fromtimestamp(float(time.time()))
    f.write('\n'+str(t2))
finally:
    if f:
        f.close()

 

下載大文件  2017-10-7      補充閱讀:http://blog.topspeedsnail.com/archives/8462  多線程下載

import requests
import urllib
#openurl = "http://www.xxx.com/zz.rar"     #普通下載
#saveurl = "d:/99999.rar"
#urllib.request.urlretrieve(openurl, saveurl)

openurl = "http://xxx/xxx.tar.gz"
saveurl = "d:/999.tar.gz"
r = requests.get(openurl, stream=True)    #流式下載
f = open(saveurl, "wb")
for chunk in r.iter_content(chunk_size=512):
    if chunk:
        f.write(chunk)

 

 

 

 

網易雲音樂批量下載

https://www.zhihu.com/question/20799742

一個例子。建立文件夾后,python下載音樂文件。  2017-3-23 

# -*- coding: utf-8 -*-
import requests
import urllib

# 榜單歌曲批量下載
#http://music.163.com/discover/toplist?id=3779629    id來自於 http://music.163.com/ 的“雲音樂新歌榜”
r = requests.get('http://music.163.com/api/playlist/detail?id=3779629')
arr = r.json()['result']['tracks']    # 共有100首歌

for i in range(10,20):    # 輸入要下載音樂的數量,1到100。
    name = str(i+1) + ' ' + arr[i]['name'] + '.mp3'
    link = arr[i]['mp3Url']
    urllib.request.urlretrieve(link, '網易雲音樂\\' + name)    # 提前要創建文件夾
    print(name + ' 下載完成')

 http://moonlib.com/606.html  網易雲音樂常用API  2018-3-31

 

使用urllib,發送請求

這里有點小問題還沒解決,拿到的網頁,解碼有問題:    print(resp.read().decode("utf-8"))

from urllib import request
from urllib import parse
url111="http://www.baidu.com"
req = request.Request(url111)

#冒充瀏覽器生成請求頭
req.add_header("User-Agent","Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3026.3 Safari/537.36")
#使用 urlencode 生成POST數據
postData = parse.urlencode([
    #("rsv_spt","1"),
    ("wd","444")
])
#resp = request.urlopen(url111)
#resp = request.urlopen(req)
resp = request.urlopen(req,data=postData.encode("utf-8"))
print(resp.status)
print(resp.read())

 

 

幾個一行代碼  https://www.zhihu.com/question/37046157

# 一行篩質數
n = 100
a = filter(lambda x: all(map(lambda p: x % p != 0, range(2, x))), range(2, n))
for i in a:
    print(i)

 

# 碾平list
a = [1, 2, [3, 4], [[5, 6], [7, 8]]]
flatten = lambda x: [y for l in x for y in flatten(l)] if type(x) is list else [x]
print(flatten(a))

 

# 求偶數的平方
a = [x * x for x in range(20) if x % 2 == 0]
print(a)

 

 

 

 

..


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM