ผมสร้างเงื่อนไขไว้ว่า
if i == 1:
ให้รันไฟล์ 1.py
else :
ให้รันไฟล์ 2.py
ได้รึเปล่าครับ ผมจะใช้คำสั่งอะไรในการสั่งให้รันไฟล์ได้บ้างครับ
google ด้วยคำว่า python execute command แล้วจะเจอคำตอบ
ถามจริงๆ ก่อนจะมาถามนี่เคยหาด้วย google ก่อนหรือเปล่า? (ไม่ได้ว่าอะไรแค่อยากรู้)
พี่ cwt คับ ถึงเขาจะไม่ได้เสิร์ช กูเกิล มา ก่อน แล้ว มา ทำ การ ถาม ใน บอร์ด ผม ก็ ว่า มัน เป็น สิทธิ์ ของ เขา นะ คับ
ไม่ควรมาพูด เหน็บแนม แบบนั้น มัน ทุเรศ อ่า คับ
บางคน เขา อาจ ใหม่ สำ หรับ การ เรียน รู้ ด้วย ตัว เอง ยัง ไม่ เซียน เขา ก็ ต้อง การ ถาม แล้ว ได้ คำ ตอบ เลย
นี่ ไม่ ตอบ แล้ว พูด กวน อีก ( แบบ ว่า ขอ บ่น หน่อย เห็น มา เยอะ มาก ใน หลายๆ เว็บ บอร์ด จะ มี คน แนวๆ นี้
อยู่ เยอะ ใคร ถาม อะไร ง่ายๆ มา ไล่ ไป เสิร์ช google ตลอด )
ตอบ คุณ zooshi ผมว่า ทำได้ คับ แม้จะไม่ เคยเขียน python มา ก่อน แต่ คิด ว่า ทำ ได้ ชัวร์ 100%
นี่คือคำตอบของผมไงครับ ถาม google ก็ได้คำตอบเลยเหมือนกันครับ และการถามใน webboard ก็ควรจะอนุมานได้อยู่แล้วว่าไม่ต้องการคำตอบทันที เพราะไม่รู้ว่าจะมีคนเข้ามาอ่านและมาตอบเมื่อไหร่ อีกอย่างถ้าผมตอบแบบนี้ คนที่อ่านก็จะพอจับคำถามโยงกับ keyword ที่ผมแนะให้ หลังจากนี้ก็จะสามารถใชั้ google ได้ด้วยตัวเอง
ผมไม่เห็นว่าการตอบแนวนี้จะทุเรศตรงไหนครับ
และกรุณาดูเวลาที่ผมตอบด้วย 8.36 คือเวลาที่ผมกำลังจะออกไปทำงาน ดังนั้นผมเข้ามาตอบให้สั้นๆ แบบนี้ ถ้าจังหวะนั้นคนถามเข้ามาอ่านและไปค้น google ตามที่บอกก็จะเจอคำตอบก่อนที่ผมจะมาถึงที่ทำงานซะอีก
ใช้ภาษาไทยได้หรือไม่ครับ อ่านแล้วปวดกบาล
ใครสั่งใครสอนให้เขียนภาษาไทยเว้นวรรคแบบนี้เหรอครับ
อาจารย์ภาษาไทยมาเห็นนี่ร้องไห้น้ำตาเป็นสายเลือดแน่
kurtumm
ใจเย็นๆ ครับ มียุคนึงเราก็พยายามให้คนไทยเขียนแยกคำเหมือนกันนะ (น่าจะช่วงสงครามโลก) นัยว่าเอาใจฝรั่ง หนังสือเรียนภาษาไทยตอนประถม (สมัยผม) ก็เขียนแยกแบบนี้เหมือนกัน พอดีไปเจอ link นี้ ลองไปอ่านดูเค้าคุยกันเรื่องนี้ครับ
เค้าคงไม่รู้จะหาด้วย Keyword อะไร และอีกอย่างถึงหาเจอก็อาจจะอ่านไม่ออก ไม่อย่างนั้นคงหาเองแล้ว
ถามในนี้ ง่ายจะตาย ไม่ต้องหา แถมได้คำตอบเป็นภาษาไทยอีก..
a.py import sys, subprocess
import sys, subprocess
print "Hello this is a\n"
subprocess.call([sys.executable, "", "b.py"])
b.py print "Hello this is b\n"
print "Hello this is b\n"
ทดลอง
Hello this is b
Hello this is a
นั่งพิมพ์ตั้งนาน ท่าน anu มาตอบให้ละ เหอๆ ข้าน้อยขอคาราวะ หนึ่งจอก
แสวงหามิใช่เพราะรอคอย เชี่ยวชาญมิใช่เพราะโอกาส ชำนาญมิใช่เพราะโชคช่วย"ดังนี้แล้วลิขิตฟ้าหรือจะสู้มานะตน"chonlatee
ผมเคยเห็นใน codenone มีคน post หรือ reply ไว้นี้แหละ ใ้้ห้ python รันไฟล์อื่น
ตอบ zoozhi : ทำได้ครับให้ python excute ไฟล์อื่น
ผมหาให้แล้วครับ
If you want to run the whole other program, you can use the os.system() function. Here's an example of how it might work:
import os print "I will call this other program called hello.py" os.system("python hello.py")
คัดลอกจาก
http://mail.python.org/pipermail/tutor/2002-September/017368.html
ขอแสดงความคิดเห็นในการ search หาข้อมูลก่อน : ผมเห็นด้วยคุณ cwt และ immortalt
เห็นด้วย immortalt : ผมก็เคยไปถามในบอร์ดบางบอร์ด บางคนก็ตอบบางคนก็ให้ไป search google จนผมไม่กล้าถามเลย ทั้งๆที่ผมก็หาแล้วนะใน google แต่ไม่เจอ อาจจะเกิดจากใช้ keyword ไม่ตรงอะไรประมาณนี้ ผมว่าถ้าไล่ให้ไป search google อย่างเดียว ไม่ต้องตั้งมาหรอกครับบอร์ดหรืออะไรที่คอยช่วยปัญหา ความคิดเห็นส่วนตัวนะครับ
เห็นด้วย cwt : คือบางคำถามเนี้ย search google ก็ไม่ได้ยากเย็นอะไรเลย อย่างเช่นคำถาม "ผมจะเริ่มเขียน python เริ่มยังไงดี" , "เขียน python ต้องทำยังไง" อันนี้ผมเเห็นด้วยครับ แต่บางคำถามก็ต้องนึกว่าจะใช้ keyword อะไรในการค้นหา อันนี้ตัวผมถือว่าอยากพอสมควร
กรณีของ จขกท นั้นถือว่าพอรับได้ แต่ถ้าหาใน google แล้วไม่เจอก็ควรจะบอกหน่อยว่า
"ผมหาใน google แล้วไม่เจอ ผมอาจจะใ้ช้คำไม่ถูกต้อง รบกวนด้วยครับ" ประมาณนี้
ท่านพี่ทั้งหลายในนี้จะได้รู้ว่า เราก็พยายามเหมือนกัน แต่ยังไม่ค้นพบแล้วรีบ หรือ เร่งด่วน ก็เลยถาม
เพิ่มให้ -- ผมก็ไม่เคยเขียน Python มาก่อนเหมือนกัน แต่สนใจกับคำถาม ก็เลยลองหาดู
ผมใช้ keyword นี้นะครับ
ขอบคุณทุกท่านนะครับสำหรับคำแน่ะนำ ผมลองทำดูแล้ว ก็ยังไม่ได้เลยครับ
ของคุณ anu ผมลองทำดูแล้วเริ่มจากลองโค้ดที่คุณให้ หลังจากรัน a.py คำตอบได้แต่ a ครับ b ไม่แสดงออกมาด้วย
ของคุณ risc ผมลองใช้ os.system แล้วนะครับแต่ผลลัพธ์แสดงที่หน้าจอดอส แล้วไม่ได้แสดงเป็นภาษาไทย ผมไม่แน่ใจว่าได้รึเปล่า
ของคุณ cwt ขอบคุณนะครับสำหรับ keyword ผมก็ลองตามที่คุณให้มา ก็เจอโค้ดบางแต่ยังรันไม่ได้นะครับ สงสัยคงจะใส่ค่าผิด
ผมรันผ่าน IDLE บน window นะครับ ไม่ทราบว่าจะเกี่ยวรึเปล่าที่รันไม่ได้
แบบนี้ค่อยน่าตอบหน่อยครับ คือได้ลองดูก่อน แล้วเจอปัญหา แล้วค่อยมาถามว่าปัญหาที่เจอคืออะไร
from subprocess import Popen,PIPE p = Popen('/bin/ls', shell=True,stdout=PIPE,stderr=PIPE) out = ''.join(p.stdout.readlines()) outerr = ''.join(p.stderr.readlines())
ลองทำแบบนี้ครับ parameter แรกของ Popen คือคำสั่งที่เราจะ execute
output จะอยู่ในตัวแปร out และ error จะอยู่ใน outerr
ตาม code นี้ถ้าสั่ง print out ก็จะเห็น output จากการ execute /bin/ls ครับ
ปล. code นี้ผมก็เอามาจาก link แรกที่ google เจอครับ แต่แก้นิดหน่อยให้ใช้บน python 2.5
คงเกี่ยวกับการ encode ลองดูกระทู้นี้ครับ
http://www.blognone.com/node/10365
ถ้า output ถูกส่งไปยัง command line (DOS) ของ windows ยังไงก็อ่านไม่ออกอยู่แล้วครับ เพราะว่า font ของ command line ใน windows ไม่มีภาษาไทย
google ด้วยคำว่า python execute command แล้วจะเจอคำตอบ
ถามจริงๆ ก่อนจะมาถามนี่เคยหาด้วย google ก่อนหรือเปล่า? (ไม่ได้ว่าอะไรแค่อยากรู้)
พี่ cwt คับ ถึงเขาจะไม่ได้เสิร์ช กูเกิล มา ก่อน แล้ว มา ทำ การ ถาม ใน บอร์ด ผม ก็ ว่า มัน เป็น สิทธิ์ ของ เขา นะ คับ
ไม่ควรมาพูด เหน็บแนม แบบนั้น มัน ทุเรศ อ่า คับ
บางคน เขา อาจ ใหม่ สำ หรับ การ เรียน รู้ ด้วย ตัว เอง ยัง ไม่ เซียน เขา ก็ ต้อง การ ถาม แล้ว ได้ คำ ตอบ เลย
นี่ ไม่ ตอบ แล้ว พูด กวน อีก ( แบบ ว่า ขอ บ่น หน่อย เห็น มา เยอะ มาก ใน หลายๆ เว็บ บอร์ด จะ มี คน แนวๆ นี้
อยู่ เยอะ ใคร ถาม อะไร ง่ายๆ มา ไล่ ไป เสิร์ช google ตลอด )
ตอบ คุณ zooshi ผมว่า ทำได้ คับ แม้จะไม่ เคยเขียน python มา ก่อน แต่ คิด ว่า ทำ ได้ ชัวร์ 100%
นี่คือคำตอบของผมไงครับ ถาม google ก็ได้คำตอบเลยเหมือนกันครับ และการถามใน webboard ก็ควรจะอนุมานได้อยู่แล้วว่าไม่ต้องการคำตอบทันที เพราะไม่รู้ว่าจะมีคนเข้ามาอ่านและมาตอบเมื่อไหร่ อีกอย่างถ้าผมตอบแบบนี้ คนที่อ่านก็จะพอจับคำถามโยงกับ keyword ที่ผมแนะให้ หลังจากนี้ก็จะสามารถใชั้ google ได้ด้วยตัวเอง
ผมไม่เห็นว่าการตอบแนวนี้จะทุเรศตรงไหนครับ
และกรุณาดูเวลาที่ผมตอบด้วย 8.36 คือเวลาที่ผมกำลังจะออกไปทำงาน ดังนั้นผมเข้ามาตอบให้สั้นๆ แบบนี้ ถ้าจังหวะนั้นคนถามเข้ามาอ่านและไปค้น google ตามที่บอกก็จะเจอคำตอบก่อนที่ผมจะมาถึงที่ทำงานซะอีก
ใช้ภาษาไทยได้หรือไม่ครับ อ่านแล้วปวดกบาล
ใครสั่งใครสอนให้เขียนภาษาไทยเว้นวรรคแบบนี้เหรอครับ
อาจารย์ภาษาไทยมาเห็นนี่ร้องไห้น้ำตาเป็นสายเลือดแน่
kurtumm
ใจเย็นๆ ครับ มียุคนึงเราก็พยายามให้คนไทยเขียนแยกคำเหมือนกันนะ (น่าจะช่วงสงครามโลก) นัยว่าเอาใจฝรั่ง หนังสือเรียนภาษาไทยตอนประถม (สมัยผม) ก็เขียนแยกแบบนี้เหมือนกัน พอดีไปเจอ link นี้ ลองไปอ่านดูเค้าคุยกันเรื่องนี้ครับ
เค้าคงไม่รู้จะหาด้วย Keyword อะไร และอีกอย่างถึงหาเจอก็อาจจะอ่านไม่ออก ไม่อย่างนั้นคงหาเองแล้ว
ถามในนี้ ง่ายจะตาย ไม่ต้องหา แถมได้คำตอบเป็นภาษาไทยอีก..
a.py
import sys, subprocess
print "Hello this is a\n"
subprocess.call([sys.executable, "", "b.py"])
b.py
print "Hello this is b\n"
ทดลอง
python b.py
Hello this is b
python a.py
Hello this is a
Hello this is b
นั่งพิมพ์ตั้งนาน ท่าน anu มาตอบให้ละ เหอๆ ข้าน้อยขอคาราวะ หนึ่งจอก
แสวงหามิใช่เพราะรอคอย เชี่ยวชาญมิใช่เพราะโอกาส ชำนาญมิใช่เพราะโชคช่วย"ดังนี้แล้วลิขิตฟ้าหรือจะสู้มานะตน"chonlatee
ผมเคยเห็นใน codenone มีคน post หรือ reply ไว้นี้แหละ ใ้้ห้ python รันไฟล์อื่น
ตอบ zoozhi : ทำได้ครับให้ python excute ไฟล์อื่น
ผมหาให้แล้วครับ
If you want to run the whole other program, you can use the os.system()
function. Here's an example of how it might work:
#
import os
print "I will call this other program called hello.py"
os.system("python hello.py")
#
คัดลอกจาก
http://mail.python.org/pipermail/tutor/2002-September/017368.html
ขอแสดงความคิดเห็นในการ search หาข้อมูลก่อน : ผมเห็นด้วยคุณ cwt และ immortalt
เห็นด้วย immortalt : ผมก็เคยไปถามในบอร์ดบางบอร์ด บางคนก็ตอบบางคนก็ให้ไป search google จนผมไม่กล้าถามเลย ทั้งๆที่ผมก็หาแล้วนะใน google แต่ไม่เจอ อาจจะเกิดจากใช้ keyword ไม่ตรงอะไรประมาณนี้ ผมว่าถ้าไล่ให้ไป search google อย่างเดียว ไม่ต้องตั้งมาหรอกครับบอร์ดหรืออะไรที่คอยช่วยปัญหา ความคิดเห็นส่วนตัวนะครับ
เห็นด้วย cwt : คือบางคำถามเนี้ย search google ก็ไม่ได้ยากเย็นอะไรเลย อย่างเช่นคำถาม "ผมจะเริ่มเขียน python เริ่มยังไงดี" , "เขียน python ต้องทำยังไง" อันนี้ผมเเห็นด้วยครับ แต่บางคำถามก็ต้องนึกว่าจะใช้ keyword อะไรในการค้นหา อันนี้ตัวผมถือว่าอยากพอสมควร
กรณีของ จขกท นั้นถือว่าพอรับได้ แต่ถ้าหาใน google แล้วไม่เจอก็ควรจะบอกหน่อยว่า
"ผมหาใน google แล้วไม่เจอ ผมอาจจะใ้ช้คำไม่ถูกต้อง รบกวนด้วยครับ" ประมาณนี้
ท่านพี่ทั้งหลายในนี้จะได้รู้ว่า เราก็พยายามเหมือนกัน แต่ยังไม่ค้นพบแล้วรีบ หรือ เร่งด่วน ก็เลยถาม
แสวงหามิใช่เพราะรอคอย เชี่ยวชาญมิใช่เพราะโอกาส ชำนาญมิใช่เพราะโชคช่วย"ดังนี้แล้วลิขิตฟ้าหรือจะสู้มานะตน"chonlatee
เพิ่มให้ -- ผมก็ไม่เคยเขียน Python มาก่อนเหมือนกัน แต่สนใจกับคำถาม ก็เลยลองหาดู
ผมใช้ keyword นี้นะครับ
ขอบคุณทุกท่านนะครับสำหรับคำแน่ะนำ ผมลองทำดูแล้ว ก็ยังไม่ได้เลยครับ
ของคุณ anu ผมลองทำดูแล้วเริ่มจากลองโค้ดที่คุณให้ หลังจากรัน a.py คำตอบได้แต่ a ครับ b ไม่แสดงออกมาด้วย
ของคุณ risc ผมลองใช้ os.system แล้วนะครับแต่ผลลัพธ์แสดงที่หน้าจอดอส แล้วไม่ได้แสดงเป็นภาษาไทย ผมไม่แน่ใจว่าได้รึเปล่า
ของคุณ cwt ขอบคุณนะครับสำหรับ keyword ผมก็ลองตามที่คุณให้มา ก็เจอโค้ดบางแต่ยังรันไม่ได้นะครับ สงสัยคงจะใส่ค่าผิด
ผมรันผ่าน IDLE บน window นะครับ ไม่ทราบว่าจะเกี่ยวรึเปล่าที่รันไม่ได้
แบบนี้ค่อยน่าตอบหน่อยครับ คือได้ลองดูก่อน แล้วเจอปัญหา แล้วค่อยมาถามว่าปัญหาที่เจอคืออะไร
from subprocess import Popen,PIPE
p = Popen('/bin/ls', shell=True,stdout=PIPE,stderr=PIPE)
out = ''.join(p.stdout.readlines())
outerr = ''.join(p.stderr.readlines())
ลองทำแบบนี้ครับ parameter แรกของ Popen คือคำสั่งที่เราจะ execute
output จะอยู่ในตัวแปร out และ error จะอยู่ใน outerr
ตาม code นี้ถ้าสั่ง print out ก็จะเห็น output จากการ execute /bin/ls ครับ
ปล. code นี้ผมก็เอามาจาก link แรกที่ google เจอครับ แต่แก้นิดหน่อยให้ใช้บน python 2.5
คงเกี่ยวกับการ encode ลองดูกระทู้นี้ครับ
http://www.blognone.com/node/10365
แสวงหามิใช่เพราะรอคอย เชี่ยวชาญมิใช่เพราะโอกาส ชำนาญมิใช่เพราะโชคช่วย"ดังนี้แล้วลิขิตฟ้าหรือจะสู้มานะตน"chonlatee
ถ้า output ถูกส่งไปยัง command line (DOS) ของ windows ยังไงก็อ่านไม่ออกอยู่แล้วครับ เพราะว่า font ของ command line ใน windows ไม่มีภาษาไทย