让光驱出出进进

21 views
Skip to first unread message

aiqier

unread,
Feb 12, 2012, 4:29:45 AM2/12/12
to python-cn(华蟒用户组,CPyUG 邮件列表)
上次看的《非诚勿扰》上面,那个计算机博士写了一段代码,让光驱进进出出,请问用python可以实现吗?怎么实现

zhao shichen

unread,
Feb 12, 2012, 4:49:28 AM2/12/12
to pyth...@googlegroups.com
eject命令就ok了

在 2012年2月12日 下午5:29,aiqier <liuai...@gmail.com>写道:
上次看的《非诚勿扰》上面,那个计算机博士写了一段代码,让光驱进进出出,请问用python可以实现吗?怎么实现

--
来自: python-cn`CPyUG`华蟒用户组(中文Python技术邮件列表)
规则: http://code.google.com/p/cpyug/wiki/PythonCn
发言: pyth...@googlegroups.com
退订: python-cn+...@googlegroups.com (向此发空信即退!)
详情: http://code.google.com/p/cpyug/wiki/PythonCn
严正: 理解列表! 智慧提问! http://wiki.woodpecker.org.cn/moin/AskForHelp
强烈: 建议使用技巧: 如何有效地报告Bug http://www.chiark.greenend.org.uk/%7Esgtatham/bugs-cn.html



--
呆痴木讷,君子四德

lee Alexander

unread,
Feb 12, 2012, 4:54:16 AM2/12/12
to pyth...@googlegroups.com
linux下很简单 调用eject命令弹出 eject -t 弹入,import os后调用os.system  os.popen啥的都行

windows的机器比较麻烦,可以通过调用win32api来实现。应该是mciSendString这个api函数,详解看http://blog.csdn.net/psongchao/article/details/1487788



在 2012年2月12日 下午5:29,aiqier <liuai...@gmail.com>写道:
上次看的《非诚勿扰》上面,那个计算机博士写了一段代码,让光驱进进出出,请问用python可以实现吗?怎么实现
--
来自: python-cn`CPyUG`华蟒用户组(中文Python技术邮件列表)
规则: http://code.google.com/p/cpyug/wiki/PythonCn
发言: pyth...@googlegroups.com
退订: python-cn+...@googlegroups.com (向此发空信即退!)
详情: http://code.google.com/p/cpyug/wiki/PythonCn
严正: 理解列表! 智慧提问! http://wiki.woodpecker.org.cn/moin/AskForHelp
强烈: 建议使用技巧: 如何有效地报告Bug http://www.chiark.greenend.org.uk/%7Esgtatham/bugs-cn.html



--

lee Alexander

unread,
Feb 12, 2012, 4:58:25 AM2/12/12
to pyth...@googlegroups.com
linux版的代码相当的简单

import os
import time

while(True):
    os.system("eject")
    time.sleep(3)
    os.system("eject -t")
    time.sleep(3)

7行就搞定了    
--

Xunzhen Quan

unread,
Feb 12, 2012, 5:02:45 AM2/12/12
to pyth...@googlegroups.com
其实秉承 Pythonic 的精神……这种事情应该直接用 bash 做……

2012/2/12 lee Alexander <superp...@gmail.com>

依云

unread,
Feb 12, 2012, 5:07:19 AM2/12/12
to pyth...@googlegroups.com
On Sun, Feb 12, 2012 at 05:58:25PM +0800, lee Alexander wrote:
> linux版的代码相当的简单
>
> import os
> import time
>
> while(True):
> os.system("eject")
> time.sleep(3)
> os.system("eject -t")
> time.sleep(3)
>
> 7行就搞定了

$ while true; do eject -T; sleep 3; done

--
Best regards,
lilydjwg

Linux Vim Python 我的博客:
http://lilydjwg.is-programmer.com/
--
A: Because it obfuscates the reading.
Q: Why is top posting so bad?

XiongJia Le

unread,
Feb 12, 2012, 7:16:40 AM2/12/12
to pyth...@googlegroups.com
其实要写一个通用的也未必简单...
1. eject 需要考虑多个设备, 比如有 2个光驱,或者有外置光驱
2. 需要考虑光驱类型.比如,某些笔记本上的光驱必须要手扣一下才能被关上,还有一些吸入式的光驱....

2012/2/12 依云 <lily...@gmail.com>

Xunzhen Quan

unread,
Feb 12, 2012, 8:34:22 AM2/12/12
to pyth...@googlegroups.com
这个本来就是拿来玩的,不怎么需要考虑通用性的吧 =。=

2012/2/12 XiongJia Le <lexio...@gmail.com>

CheeponLee

unread,
Feb 12, 2012, 9:25:09 AM2/12/12
to pyth...@googlegroups.com
win下:

os.system(' mshta \"javascript:new ActiveXObject(\'WMPlayer.OCX\').cdromCollection.Item(0).Eject();window.close();\" ')

Ted Yin

unread,
Feb 12, 2012, 9:38:38 AM2/12/12
to pyth...@googlegroups.com
笔记本的无法收回。

-- 
--- This information is automatically generated ---

The *attached* file named 'signature.asc' is used for 
*verification* of the content above. If you haven't 
got a public key, please contact me to acquire one.

ted.sybil aka. ymfoi aka. Ted Yin
signature.asc

lee Alexander

unread,
Feb 12, 2012, 10:21:04 AM2/12/12
to pyth...@googlegroups.com
为这么个东西开发通用化的解决方案多半是脑子秀逗了,你又不需要做个东西拿去卖,那个一行的shell就够了
--

hellojinjie

unread,
Feb 12, 2012, 8:37:52 PM2/12/12
to python-cn(华蟒用户组,CPyUG 邮件列表)
eject -t 命令无法合上光驱啊

[jj@hellojinjie ~]$ eject -t
eject: CD-ROM tray close command failed: Input/output error

On Feb 12, 5:58 pm, lee Alexander <superpower...@gmail.com> wrote:
> linux版的代码相当的简单
>
> import os
> import time
>
> while(True):
> os.system("eject")
> time.sleep(3)
> os.system("eject -t")
> time.sleep(3)
>
> 7行就搞定了
>

> 在 2012年2月12日 下午5:54,lee Alexander <superpower...@gmail.com>写道:
>
>
>
>
>
>
>
>
>
> > linux下很简单 调用eject命令弹出 eject -t 弹入,import os后调用os.system os.popen啥的都行
>
> > windows的机器比较麻烦,可以通过调用win32api来实现。应该是mciSendString这个api函数,详解看
> >http://blog.csdn.net/psongchao/article/details/1487788
>

> > 在 2012年2月12日 下午5:29,aiqier <liuaiqi...@gmail.com>写道:
>
> >> 上次看的《非诚勿扰》上面,那个计算机博士写了一段代码,让光驱进进出出,请问用python可以实现吗?怎么实现
>
> >> --
> >> 来自: python-cn`CPyUG`华蟒用户组(中文Python技术邮件列表)
> >> 规则:http://code.google.com/p/cpyug/wiki/PythonCn
> >> 发言: pyth...@googlegroups.com
> >> 退订: python-cn+...@googlegroups.com (向此发空信即退!)
> >> 详情:http://code.google.com/p/cpyug/wiki/PythonCn

> >> 严正: 理解列表! 智慧提问!http://wiki.woodpecker.org.cn/moin/AskForHelp


> >> 强烈: 建议使用技巧: 如何有效地报告Bug
> >>http://www.chiark.greenend.org.uk/%7Esgtatham/bugs-cn.html
>
> > --

> > <http://weibo.com/1468733835?s=6uyXnP>
>
> --
> <http://weibo.com/1468733835?s=6uyXnP>

frank cui

unread,
Feb 12, 2012, 8:44:30 PM2/12/12
to pyth...@googlegroups.com
-t   With this option the drive is given a CD-ROM tray close command. Not all devices support this command
不是所有设备都支持的。

frank

2012/2/12 hellojinjie <hello...@gmail.com>
严正: 理解列表! 智慧提问! http://wiki.woodpecker.org.cn/moin/AskForHelp

Zephyr

unread,
Feb 12, 2012, 9:05:20 PM2/12/12
to pyth...@googlegroups.com


在 2012年2月12日 下午11:21,lee Alexander <superp...@gmail.com>写道:
为这么个东西开发通用化的解决方案多半是脑子秀逗了,你又不需要做个东西拿去卖,那个一行的shell就够了


喂,别人就是说说了。

哈哈哈,我看到这个主题和回复觉得这里都是一群可爱的人 ^o^


--
进出自由才是游戏者的生存之道。

http://zys-free.com
@zouyesheng

lee Alexander

unread,
Feb 14, 2012, 8:15:33 PM2/14/12
to pyth...@googlegroups.com
所噶,我过于严肃了点

--
来自: python-cn`CPyUG`华蟒用户组(中文Python技术邮件列表)
规则: http://code.google.com/p/cpyug/wiki/PythonCn
发言: pyth...@googlegroups.com
退订: python-cn+...@googlegroups.com (向此发空信即退!)
详情: http://code.google.com/p/cpyug/wiki/PythonCn
严正: 理解列表! 智慧提问! http://wiki.woodpecker.org.cn/moin/AskForHelp
强烈: 建议使用技巧: 如何有效地报告Bug http://www.chiark.greenend.org.uk/%7Esgtatham/bugs-cn.html



--

Reply all
Reply to author
Forward
0 new messages