<jupyter_start><jupyter_text>Author/Write : <NAME> E-mail : <EMAIL> / <EMAIL>  ติดตั้ง Library ที่จำเป็น<jupyter_code>!pip install termcolor 
!pip install pyfiglet
from pyfiglet import figlet_format 
from termcolor import cprint 

cprint(figlet_format("Created Supapong Sakulkoo",font="slant"),'blue',attrs=['bold'])<jupyter_output>[1m[34m   ______                __           __
  / ____/_______  ____ _/ /____  ____/ /
 / /   / ___/ _ \/ __ `/ __/ _ \/ __  / 
/ /___/ /  /  __/ /_/ / /_/  __/ /_/ /  
\____/_/   \___/\__,_/\__/\___/\__,_/   
                                        
   _____                                          
  / ___/__  ______  ____ _____  ____  ____  ____ _
  \__ \/ / / / __ \/ __ `/ __ \/ __ \/ __ \/ __ `/
 ___/ / /_/ / /_/ / /_/ / /_/ / /_/ / / / / /_/ / 
/____/\__,_/ .___/\__,_/ .___/\____/_/ /_/\__, /  
          /_/         /_/                /____/   
   _____       __         ____             
  / ___/____ _/ /____  __/ / /______  ____ 
  \__ \/ __ `/ //_/ / / / / //_/ __ \/ __ \
 ___/ / /_/ / ,< / /_/ / / ,< / /_/ / /_/ /
/____/\__,_/_/|_|\__,_/_/_/|_|\____/\____/ 
                                           
[0m<jupyter_text>1.  time.time() ฟังก์ชันบอกเวลาของระบบปฎิบัติการ Unix นับเริ่มต้นขึ้นวันที่ 1 มกราคม ค.ศ. 1970 รวมเวลาจนถึงปัจจุบันโดยเวลาของ Unix มีหน่วยเป็นวินาที<jupyter_code>import time 
print(time.time())
import time

print("Unix Time : ",time.time())


startTime = time.time()
print(10) #คำสั่งที่ต้องการนับเวลาการทำงาน
endTime = time.time()
print("เวลาที่คำสั่งปริ้นทำงาน : ",abs(startTime-endTime))


import doctest 

def plus(a,b):
    """
    >>> plus(5,6)
    11
    """
    return a+b
doctest.testmod()<jupyter_output><empty_output><jupyter_text>2.   startTime - endTime = เวลาที่คำสั่งทำงาน<jupyter_code>import time
def calcProd():
    product = 1 
    for i in range(10000):
        product = product *1
    return product 

startTime = time.time()
prod = calcProd() #ค่าที่ได้จากการ return ในฟังก์ชัน calcProd()
endTime = time.time()

print("prod = ",prod)
print("result : ",len(str(prod)))
print("result : ",endTime-startTime)<jupyter_output>prod =  1
result :  1
result :  0.0<jupyter_text>2.1 ราสามารถให้แสดงผลวันเวลาในรูปแบบตามที่ต้องการซึ่งกำหนดเองได้โดยใช้เมธอด strftime อาร์กิวเมนต์ที่ต้องใส่คือสายอักขระที่ประกอบไปด้วย % ตามด้วยอักษร ซึ่งแทนค่าในส่วนต่างๆในรูปแบบต่างๆของวันเวลา ซึ่งสรุปได้ตามนี้ %a	วันในสัปดาห์ในรูปย่อ Tue %A	วันในสัปดาห์เป็นชื่อเต็ม Tuesday %w	วันในสัปดาห์เป็นตัวเลข อาทิตย์เป็น 0 เสาร์เป็น 6 %d	วันที่ในรูปเลขสองหลัก (เติม 0 เมื่อมีหลักเดียว) %b	ชื่อเดือนในรูปย่อ  Sep %B	ชื่อเดือนเป็นชื่อเต็ม September %m	เลขเดือนเป็นเลขสองหลัก (เติม 0 เมื่อมีหลักเดียว) %y	เลขปีในรูปเลขสองหลักสุดท้าย %Y	เลขปีในรูปเลขสี่หลัก (เติม 0 เมื่อมีไม่ถึงสี่หลัก) %H	เวลาชั่วโมงเป็นเลขสองหลักถึง 24 (เติม 0 เมื่อมีหลักเดียว) %I	เวลาชั่วโมงเป็นเลขสองหลักไม่เกิน 12 (เติม 0 เมื่อมีหลักเดียว) %p	เวลา AM หรือ PM %M	เวลานาทีเป็นเลขสองหลัก (เติม 0 เมื่อมีหลักเดียว) %S	เวลาวินาทีเป็นเลขสองหลัก (เติม 0 เมื่อมีหลักเดียว) %f	เวลาไมโครวินาทีเป็นเลขหกหลัก (เติม 0 เมื่อมีไม่ถึงหกหลัก) %j	เลขลำดับวันในปี (1 ถึง 366) %U	หรือ %W ลำดับของสัปดาห์ภายในปี %c	แสดงวันเวลาในรูปแบบเดียวกับ ctime() %x	เดือน/ปี/วัน %X	ชั่วโมง:นาที:วินาที  3. time.sleep(a) หยุดการทำงานของโปรแกรม เป็นเวลา a วินาที เช่น   time.sleep(3) หยุดเวลาการทำงานของโปรแกรม 3 วินาที<jupyter_code>import time 
for i in range(3):
    print("Tick")
    time.sleep(2)
    print("Tock")
    time.sleep(2)

print("5 second to end")
time.sleep(5)
print('Ending')
for i in range(3):
    print("Tick")
    print("Tock")<jupyter_output>Tick
Tock
Tick
Tock
Tick
Tock<jupyter_text>3.1 time.ctime() คำสั่งรับข้อมูลเวลาในรูปแบบสตริง<jupyter_code>time.ctime() #ctime = current time = เวลาปัจจุบัน
print(time.ctime())
time.localtime() #return เวลาท้องถิ่น
timeis = time.localtime()
print("เวลา : ",timeis.tm_hour,":",timeis.tm_min,":",timeis.tm_sec)
print(timeis.tm_yday)
print('year : ',time.localtime().tm_year)
print('month : ',time.localtime().tm_mon)
print('day : ',time.localtime().tm_mday)
print('hour : ',time.localtime().tm_hour)
print('min : ',time.localtime().tm_min)<jupyter_output>year :  2020
month :  9
day :  29
hour :  18
min :  58<jupyter_text>4. datetime.datetime.now() แสดงเวลาปัจจุบัน<jupyter_code>import datetime


dt = datetime.datetime.now()
print("Datetime now : ",datetime.datetime.now())
print("Seconds : ",dt.second)
print("Minute : ",dt.minute)
print("Hour : ",dt.hour)
print("Day : ",dt.day)
print("Month : ",dt.month)
print("Year : ",dt.year)


print(datetime.datetime.now())
print(datetime.datetime.now().second)
print(datetime.datetime.now().minute)
print(datetime.datetime.now().hour)
print(datetime.datetime.now().day)<jupyter_output>2020-09-29 19:01:19.343846
19
1
19
29<jupyter_text>datetime.datetime<jupyter_code>print(datetime.datetime)
print(dt.strftime("%B of %Y"))
print(dt.strftime("%b of %y"))
dt.strftime("%Y/ %m/%d %H:%M:%S")<jupyter_output><empty_output><jupyter_text>%ตัวใหญ่ชื่อเต็ม  %ตัวเล็กชื่อย่อ<jupyter_code>#ใช้งานจริง 
dt = datetime.datetime.now()
print(dt.strftime("%A  %D  %B  %Y   %H:%M:%S"))
print(dt.strftime("%a  %d  %b  %y  %h  %m"))<jupyter_output>Tuesday  09/29/20  September  2020   19:10:27
Tue  29  Sep  20  Sep  09<jupyter_text>5. threading การแบ่งการทำงานของโปรแกรม ให้โปรแกรมทำงานพร้อมกันได้<jupyter_code>import time 
import threading 

def show(e):
    print("Hello World {}".format(e))

def show2(s):
    print("Threading Start {}".format(s))
    
threading.Thread(target=show,args=[100]).start()
threading.Thread(target=show2,args=["Program"]).start()
def mul(a,b):
    print('mul : ',a*b) 

def plus(x,y):
    print('plus : ',x+y) 

thread1 = threading.Thread(target=mul,args=[2,5])
thread1.start()

thread2 = threading.Thread(target = plus , args=[3,5])
thread2.start()

mul(2,5)
plus(3,5)<jupyter_output>mul :  10
plus :  8<jupyter_text>5.1 Join<jupyter_code>thread1 = threading.Thread(target=show,args=[100])
thread2 = threading.Thread(target=show,args=[200])



thread1.start() #thread1 เริ่มทำงาน แต่ threadที่ 2 ต้องรอให้ threadที่ 1 ทำงานเสร็จก่อน จึงจะทำงาน
thread1.join()
thread2.start()
thread2.join()<jupyter_output>Hello World 100
Hello World 200<jupyter_text>6. Subprocess<jupyter_code>import subprocess
subprocess.check_output('dir',shell=True)
subprocess.run('python -V')
subprocess.run('python -V'.split())
p = subprocess.run(['python','-V'])
print(p)
print('args : ',p.args)
print('returncode : ',p.returncode)<jupyter_output>CompletedProcess(args=['python', '-V'], returncode=0)
args :  ['python', '-V']
returncode :  0
{'fraction_non_alphanumeric': 0.19607843137254902, 'fraction_numerical': 0.025582107843137254, 'mean_word_length': 3.9992343032159265, 'pattern_counts': {'":': 2, '<': 41, '<?xml version=': 0, '>': 42, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 1, 'word_list_counts': {'cursed_substrings.json': 4, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'chain_length': '11', 'dir': 'jupyter-structured-clean-dedup', 'id': '520259', 'license': 'MIT', 'n_tokens_mistral': 3560, 'n_tokens_neox': 3613, 'n_words': 404, 'path': 'Lab6_Threading Time.ipynb', 'repo_name': 'SupapongSakulkoo/Time-Threading-Turor', 'size': '6567'}