python 打印错误返回值错误

来自信鸽开发者平台
本SDK提供信鸽服务端接口的Python封装,与信鸽后台HTTP Proxy组件通信。SDK以Python Module形式提供,Module名为xinge
python sdk需要python 2.6或者更高的版本
代表在信鸽注册的一个app,调用该类实例的方法来执行对信鸽的请求
构造函数有两个参数,均为必选。
推送目标应用ID
该类包含的接口有:
pushSingleDevice
推送消息给单个设备
pushSingleAccount
推送消息给单个账户
pushAllDevices
推送消息给全量设备
按tag推送消息
queryPushStatus
查询群发消息推送状态。可查全量设备推送和按tag推送,可批量查询多条群发消息的状态
queryDeviceCount
查询app覆盖的设备数量
查询此app拥有的tag
cancelTimingPush
取消尚未推送的定时消息
表示一个允许推送的时间闭区间,从startHour:startMin到endHour:endMin
起始小时,取值范围【0,23】
起始分钟,取值范围【0,59】
截止小时,取值范围【0,23】
截止分钟,取值范围【0,59】
通知消息被点击时触发的事件
actionType
动作类型,1打开activity或app本身,2打开url,3打开Intent。默认为1
要打开的url,actionType为2时必填。
confirmOnUrl
打开url时是否需要用户确认,1需要,0不需要。actionType为2时生效,默认为0
actionType为1时,打开指定的activity,不填则运行app
actionType为3时,打开指定intent。请在Android上使用intent.toUri(Intent.URI_INTENT_SCHEME)方法来将要打开的intent序列化并填在此处,自定义intent参数也会包含在其中
intentFlag
创建通知时的intent属性,不了解可以不设置
pendingFlag
PendingIntent的属性,不了解可以不设置
packageName
要拉起的别的应用的包名
packageDownloadUrl
拉起应用的下载链接(若客户端没有找到此应用会自动去下载)
confirmOnPackage
拉起其他应用前是否确认
定义通知消息如何展现
本地通知样式,必填。含义参见终端SDK文档
是否响铃,0否,1是。选填,默认0
是否振动,0否,1是。选填,默认0
通知栏是否可清除,0否,1是。选填,默认1
若大于0,则会覆盖先前弹出的相同id通知;若为0,展示本条通知且不影响其他通知;若为-1,将清除先前弹出的所有通知,仅展示本条通知。选填,默认为0
指定应用内的声音(ring.mp3),选填
是否呼吸灯,0否,1是,选填,默认1
默认0,通知栏图标是应用内图标还是上传图标,0是应用内图标,1是上传图标,选填
应用内图标文件名(xg.png)或者下载图标的url地址,选填
Web端设置是否覆盖编号的通知样式,默认1,0否,1是,选填
指定状态栏的小图片(xg.png),选填
定义通用推送消息(目前仅限于Android平台)
标题,标题+内容不得超过800英文字符或400非英文字符的消息字符数限制
内容,标题+内容不得超过800英文字符或400非英文字符的消息字符数限制
expireTime
消息离线存储多久,单位为秒,最长存储时间3天。选填,默认为0,即不存储
消息定时推送时间,格式为year-mon-day hour:min:sec,若小于服务器当前时间则立即推送。选填,默认为空字符串,代表立即推送。若为循环任务,则该字段标识任务的起始时间
acceptTime
tuple/list
元素为TimeInterval,表示允许推送的时间段,选填
消息类型:1:通知 2:透传消息,必填
0表示按注册时提供的包名分发消息;1表示按access id分发消息,所有以该access id成功注册推送的app均可收到消息。选填,默认为0
通知样式,透传消息可不填
ClickAction
通知被点击的动作,默认为打开app。透传消息可不填
选填。用户自定义的key-value,key和value都必须为string。注意每一个key和value的字符都计入消息字符数
循环任务的执行次数,选填。取值1到14。第一条循环任务与最后一条循环任务间隔不超过14天。此参数仅对PushAllDevices和PushTags接口有效
loopInterval
循环任务的执行间隔,选填。以天为单位,取值1到14。第一条循环任务与最后一条循环任务间隔不超过14天。此参数仅对PushAllDevices和PushTags接口有效
定义iOS平台推送消息
expireTime
消息离线存储多久,单位为秒,最长存储时间3天。选填,默认为0,即不存储
消息定时推送时间,格式为year-mon-day hour:min:sec,若小于服务器当前时间则立即推送。选填,默认为空字符串,代表立即推送
acceptTime
tuple/list
元素为TimeInterval,表示允许推送的时间段,选填
string或dict
定义详见APNS payload中的alert字段
设置角标数值。定义详见APNS payload中的badge字段
设置通知声音。定义详见APNS payload中的sound字段
iOS 8新增。定义详见APNS payload中的category字段
选填。用户自定义的key-value。注意每一个key和value的字符都计入消息字符数
描述一条消息的推送状态
0(未处理)/1(推送中)/2(推送完成)/3(推送失败)
开始推送时间year-mon-day hour:min:sec
需要推送的总条数
定义一个标签-token对
标签,长度最多50字节,不可包含空格
设备token。注意长度,Android是40或64字节,iOS是64字节
可用如下形式直接在构造时指定tag和tokenTagTokenPair(),例子中token值仅为示意
TagTokenPair (“some_tag”,”some_token”)
函数说明:
PushSingleDevice(deviceToken, message, environment=0)
参数说明:
deviceToken
推送目标设备token
environment
向iOS设备推送时必填,1表示推送生产环境;2表示推送开发环境。推送Android平台不填或填0
返回由(返回码,错误描述)构成的tuple。
返回码见附录通用返回码说明
错误描述为出错情况下对错误原因的文字描述,若调用成功则为空字串
设备的账户或别名由终端SDK在调用推送注册接口时设置,详情参考终端SDK文档。本接口支持向iOS设备推送。
函数说明:
pushSingleAccount(deviceType, account, message)
参数说明:
deviceType
推送目标账号
environment
向iOS设备推送时必填,1表示推送生产环境;2表示推送开发环境。推送Android平台不填或填0
返回由(返回码,错误描述)构成的tuple。
返回码见附录通用返回码说明
错误描述为出错情况下对错误原因的文字描述,若调用成功则为空字串
设备的账户或别名由终端SDK在调用推送注册接口时设置,详情参考终端SDK文档。
函数说明:
pushAccountList (int deviceType, List&String& accountList, Message message) //android使用
pushAccountList (int deviceType, List&String& accountList, MessageIOS message, int environment) //IOS使用
参数说明:
deviceType
消息推送的适配平台:请填0
accountList
List&String&
推送目标账号,账号数量有限制,如100个
消息体,批量发送message不使用sendTime
environment
向iOS设备推送时必填,1表示推送生产环境;2表示推送开发环境。推送Android平台不填或填0
请参考附录单独描述。
后台对本接口的调用频率有限制,两次调用之间的时间间隔不能小于3秒。
函数说明:
PushAllDevices (deviceType , message, environment=0)
参数说明:
deviceType
environment
向iOS设备推送时必填,1表示推送生产环境;2表示推送开发环境。推送Android平台不填或填0
返回由(返回码,错误描述)构成的tuple。
返回码见附录通用返回码说明
错误描述为出错情况下对错误原因的文字描述,若调用成功则为空字串
推送任务id仅在推送成功时有意义。
函数说明:
PushTags (deviceType, tagList, tagsOp, message, environment=0)
参数说明:
deviceType
tuple/list
指定推送目标的tag列表,每个tag是一个string
多个tag的运算关系,取值为AND或OR
environment
向iOS设备推送时必填,1表示推送生产环境;2表示推送开发环境。推送Android平台不填或填0
返回由(返回码,错误描述)构成的tuple。
返回码见附录通用返回码说明
错误描述为出错情况下对错误原因的文字描述,若调用成功则为空字串
推送任务id仅在推送成功时有意义。
函数说明:
queryPushStatus(pushIdList)
参数说明:
pushIdList
tuple/list
推送任务id列表,每个id为一个string
返回由(返回码,错误描述)构成的tuple。
返回码见附录通用返回码说明
错误描述为出错情况下对错误原因的文字描述,若调用成功则为空字串
结果dict仅在查询成功时有意义,key为推送任务id,value为MessageStatus
函数说明:
queryDeviceCount()
参数说明:
返回由(返回码,错误描述)构成的tuple。
返回码见附录通用返回码说明
错误描述为出错情况下对错误原因的文字描述,若调用成功则为空字串
设备数仅在查询成功时有意义
函数说明:
queryTags(start, limit)
参数说明:
限制结果数量
返回由(返回码,错误描述)构成的tuple。
返回码见附录通用返回码说明
错误描述为出错情况下对错误原因的文字描述,若调用成功则为空字串
tag总数并不代表本次查询返回的tag数,而是代表该app的tag总数
tag list仅在查询成功时有意义,list的每一个元素为一个string类型的tag
函数说明:
cancelTimingPush(pushId)
参数说明:
推送任务id
返回由(返回码,错误描述)构成的tuple。
返回码见附录通用返回码说明
错误描述为出错情况下对错误原因的文字描述,若调用成功则为空字串
函数说明:
BatchSetTag(tagTokenPairs)
参数说明:
tagTokenPairs
tuple/list
元素必须是TagTokenPair。后台将对每个pair里的token设置相应的标签,每次调用最多允许输入20个pair。
返回由(返回码,错误描述)构成的tuple。
返回码见附录通用返回码说明
错误描述为出错情况下对错误原因的文字描述,若调用成功则为空字串
函数说明:
BatchDelTag(tagTokenPairs)
参数说明:
tagTokenPairs
tuple/list
元素必须是TagTokenPair。后台将为每个pair里的token删除相应的标签,每次调用最多允许输入20个pair。
返回由(返回码,错误描述)构成的tuple。
返回码见附录通用返回码说明
错误描述为出错情况下对错误原因的文字描述,若调用成功则为空字串
函数说明:
QueryTokenTags(token)
参数说明:
要查询的token
返回(返回码,错误描述,查询结果)构成的tuple
返回码见附录通用返回码说明
错误描述为出错情况下对错误原因的文字描述,若调用成功则为空字串
查询结果为list,包含目标token绑定的所有tag。例如:
[“tag1”,”tag2”]
函数说明:
QueryTagTokenNum(tag)
参数说明:
要查询的tag
返回(返回码,错误描述,查询结果)构成的tuple
返回码见附录通用返回码说明
错误描述为出错情况下对错误原因的文字描述,若调用成功则为空字串
查询结果为目标tag下绑定的设备数量。
通用返回码请参考帐号:密码:下次自动登录{url:/nForum/slist.json?uid=guest&root=list-section}{url:/nForum/nlist.json?uid=guest&root=list-section}
贴数:9&分页:星星火发信人: xingxinghuo (星星火), 信区: Python
标&&题: 请教在shell中调用python并获取py返回值的问题
发信站: 水木社区 (Tue Jun&&5 00:07:57 2012), 转信 && 又来请教大家。 && 需要在一个shell脚本中调用python程序,并根据python返回的值来决定shell返回的值。 && 比如,如果python的main() return 1, 那shell也exit 1;如果python的main() return 0, 那shell也exit 0. && 网上搜了好久不得要领,似乎要通过shell的变量"$?"进行返回值的关联? && 在python程序里,现在是指定了main函数,然后在main()里面return 1 or 0. && 在shell里是这样写的:
/usr/bin/python /path/hooks.py "$1" "$2"
exit "$?" && 但这样似乎不行,到底应该如何传递python程序的返回值给shell呢? 多谢! &&
-- && ※ 来源:·水木社区 ·[FROM: 58.68.234.*]
老鱼发信人: hgoldfish (老鱼), 信区: Python
标&&题: Re: 请教在shell中调用python并获取py返回值的问题
发信站: 水木社区 (Tue Jun&&5 00:18:07 2012), 转信 && python没有规定一个main()。 && 需要返回值的话,应该用: && import sys
sys.exit(0) &&&& 【 在 xingxinghuo (星星火) 的大作中提到: 】
: 又来请教大家。
: 需要在一个shell脚本中调用python程序,并根据python返回的值来决定shell返回的值。
: 比如,如果python的main() return 1, 那shell也exit 1;如果python的main() return 0, 那shell也exit 0.
: ...................
灭绝人性啊 &&&& ※ 来源:·水木社区 newsmth.net·[FROM: 125.78.148.*]
星星火发信人: xingxinghuo (星星火), 信区: Python
标&&题: Re: 请教在shell中调用python并获取py返回值的问题
发信站: 水木社区 (Tue Jun&&5 12:06:27 2012), 转信 &&&&那在shell里如何引用这个返回值呢? && 【 在 hgoldfish 的大作中提到: 】
: python没有规定一个main()。
: 需要返回值的话,应该用:
: import sys
: ...................
&& -- && ※ 来源:·水木社区 ·[FROM: 221.130.253.*]
星星火发信人: xingxinghuo (星星火), 信区: Python
标&&题: Re: 请教在shell中调用python并获取py返回值的问题
发信站: 水木社区 (Tue Jun&&5 18:24:09 2012), 转信 && 呵呵,可以了。 sys.exit()果然好使。 shell里面用$?也可以获取这个值。 && 【 在 xingxinghuo 的大作中提到: 】
: 那在shell里如何引用这个返回值呢?
:&& && -- && ※ 来源:·水木社区 ·[FROM: 58.68.234.*]
qq05发信人: gt05 (qq05), 信区: Python
标&&题: Re: 请教在shell中调用python并获取py返回值的问题
发信站: 水木社区 (Thu Nov 29 19:19:54 2012), 转信 && 同遇到这样的问题,能看看你的例子吗
我的是python函数中return 0 或1
在shell中得到这个返回的值,然后shell中if判断,是否执行下面的代码
shell中怎么获得这个python的返回值呢
【 在 xingxinghuo 的大作中提到: 】
: 呵呵,可以了。 sys.exit()果然好使。 shell里面用$?也可以获取这个值。
:&& && -- && ※ 来源:·水木社区 ·[FROM: 220.231.27.*]
普洛米·我们的民族从来不缺乏苦难发信人: pulo (普洛米·我们的民族从来不缺乏苦难), 信区: Python
标&&题: Re: 请教在shell中调用python并获取py返回值的问题
发信站: 水木社区 (Thu Nov 29 20:56:37 2012), 转信 && python程序直接print到stdout就行 && shell脚本里从stdin读入 && 中间用pipe连接 && 【 在 xingxinghuo (星星火) 的大作中提到: 】
: 又来请教大家。
: 需要在一个shell脚本中调用python程序,并根据python返回的值来决定shell返
: 比如,如果python的main() return 1, 那shell也exit 1;如果python的
main() return 0, 那shell也exit 0.
: ...................
&& -- && ※ 来源:·水木社区 ·[FROM: 75.72.176.227]
踏实做人发信人: wo65nwo (踏实做人), 信区: Python
标&&题: Re: 请教在shell中调用python并获取py返回值的问题
发信站: 水木社区 (Sat Mar 23 18:24:06 2013), 转信 && shell中如何获取返回值?
比如程序如下 && #!/bin/bash
python b.py
python c.py && 在b.py 和 c.py中已经分别加了语句:sys.exit(0) sys.exit(1) && 在shell中怎么获取呢?
【 在 xingxinghuo 的大作中提到: 】
: 又来请教大家。
: 需要在一个shell脚本中调用python程序,并根据python返回的值来决定shell返回的值。
: 比如,如果python的main() return 1, 那shell也exit 1;如果python的main() return 0, 那shell也exit 0.
: ...................
&& -- && ※ 来源:·水木社区 ·[FROM: 58.60.1.*]
拍耳发信人: pyer (那啥那啥都被抢注了), 信区: Python
标&&题: Re: 请教在shell中调用python并获取py返回值的问题
发信站: 水木社区 (Sat Mar 23 19:52:58 2013), 转信 && echo $?
【 在 wo65nwo (踏实做人) 的大作中提到: 】
: shell中如何获取返回值?
: 比如程序如下
: #!/bin/bash
: ...................
-- && ※ 来源:·水木社区 ·[FROM: 14.122.105.*]
冬至发信人: sssss (冬至), 信区: Python
标&&题: Re: 请教在shell中调用python并获取py返回值的问题
发信站: 水木社区 (Mon Mar 25 02:14:43 2013), 转信 && a=$(/usr/bin/python /path/hooks.py "$1" "$2" )
【 在 xingxinghuo 的大作中提到: 】
: 又来请教大家。
: 需要在一个shell脚本中调用python程序,并根据python返回的值来决定shell返回的值。
: 比如,如果python的main() return 1, 那shell也exit 1;如果python的main() return 0, 那shell也exit 0.
: ...................
&& -- && ※ 来源:·水木社区 ·[FROM: 122.225.114.*]
文章数:9&分页:温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!&&|&&
LOFTER精选
阅读(5782)|
用微信&&“扫一扫”
将文章分享到朋友圈。
用易信&&“扫一扫”
将文章分享到朋友圈。
历史上的今天
loftPermalink:'',
id:'fks_',
blogTitle:'python中os.system()的返回值',
blogAbstract:'最近遇到os.system()执行系统命令的情况,上网搜集了一下资料,整理如下,以备不时之需,同时也希望能帮到某些人。一、python中的 os.system(cmd)的返回值与linux命令返回值(具体参见本文附加内容)的关系\n大家都习惯用os.systemv()函数执行linux命令,该函数的返回值十进制数(分别对应一个16位的二进制数)。该函数的返回值与\nlinux命令返回值两者的转换关系为:该函数的返回值(十进制)转化成16二进制数,截取其高八位(如果低位数是0的情况下,有关操作系统的错误码共\n131个,所以低位都是零),然后转乘十进制数即为 linux命令返回值0。\n例如:',
blogTag:'',
blogUrl:'blog/static/',
isPublished:1,
istop:false,
modifyTime:1,
publishTime:5,
permalink:'blog/static/',
commentCount:0,
mainCommentCount:0,
recommendCount:0,
bsrk:-100,
publisherId:0,
recomBlogHome:false,
currentRecomBlog:false,
attachmentsFileIds:[],
groupInfo:{},
friendstatus:'none',
followstatus:'unFollow',
pubSucc:'',
visitorProvince:'',
visitorCity:'',
visitorNewUser:false,
postAddInfo:{},
mset:'000',
remindgoodnightblog:false,
isBlackVisitor:false,
isShowYodaoAd:true,
hostIntro:'',
hmcon:'0',
selfRecomBlogCount:'0',
lofter_single:''
{list a as x}
{if x.moveFrom=='wap'}
{elseif x.moveFrom=='iphone'}
{elseif x.moveFrom=='android'}
{elseif x.moveFrom=='mobile'}
${a.selfIntro|escape}{if great260}${suplement}{/if}
{list a as x}
推荐过这篇日志的人:
{list a as x}
{if !!b&&b.length>0}
他们还推荐了:
{list b as y}
转载记录:
{list d as x}
{list a as x}
{list a as x}
{list a as x}
{list a as x}
{if x_index>4}{break}{/if}
${fn2(x.publishTime,'yyyy-MM-dd HH:mm:ss')}
{list a as x}
{if !!(blogDetail.preBlogPermalink)}
{if !!(blogDetail.nextBlogPermalink)}
{list a as x}
{if defined('newslist')&&newslist.length>0}
{list newslist as x}
{if x_index>7}{break}{/if}
{list a as x}
{var first_option =}
{list x.voteDetailList as voteToOption}
{if voteToOption==1}
{if first_option==false},{/if}&&“${b[voteToOption_index]}”&&
{if (x.role!="-1") },“我是${c[x.role]}”&&{/if}
&&&&&&&&${fn1(x.voteTime)}
{if x.userName==''}{/if}
网易公司版权所有&&
{list x.l as y}
{if defined('wl')}
{list wl as x}{/list}页面导航:
→ 正文内容 文件输入输出
Python 文件和输入输出小结
Python 是面向对象编程语言,文件也是一种类,下面简单介绍下,方便需要的朋友
1.打开和关闭文件(open(),file(),close())
有两种内建函数可以获取文件对象:open和file。他们的用法完全一样。下面只以open()为例子讲解。获取一个文件对象(打开文件)的语法如下:&&&&&&&
代码如下:fileObj = open(filename,access_mode='r',buffering=-1)&
filename不用说你也应该知道是你要打开文件的路径。 access_mode用来标识文件打开的模式,默认为r(只读)。
常用的模式如下表所示:
以只读方式打开
以写方式打开,文件不为空时清空文件;文件不存在时新建文件。
追加模式,没有则创建
以读写模式打开,参见w,a另外还有一个b表示二进制模式访问,但是对于Linux或者unix系统来说这个模式没有任何意义,因为他们把所有文件都看作二进制文件,包括文本文件。
第三个参数不经常用到,标识访问文件的缓冲方式,0代表不缓冲,1代表缓冲一行,-1代表使用系统默认缓冲方式。只要使用系统默认就好。
一些例子:
代码如下:&&& f = open('/etc/passwd','r')&&& f1 = open('/etc/test','w')
使用完文件后,一定要记得关闭文件,操作如下:
代码如下:&&& f.close()
2.文件读入
2.1.file.read(size = -1) &&& 读取从当前文件游标起size个字节的文件内容。如果size=-1,则读取所有剩余字节。
代码如下:&&& f = open('/etc/passwd')&&& f.read(100)'root:x:0:0:root:/root:/bin/bash\nbin:x:1:1:bin:/bin:/sbin/nologin\ndaemon:x:2:2:daemon:/sbin:/sbin/nol'
2.2.file.readlines(size=-1)
&&& 从文件中读取并返回一行(包括行结束符),或返回最大size个字符
代码如下:&&& f.readline()'ogin\n'#和上面一个例子输出的最后拼起来就是 &'nologin',因为游标在l后面。&&& f.readline(1)'a'
2.3.file.readlines(sizhint=0)&&& 读取文件所有的行,并作为一个列表返回(包括行结束符),如果sizhint&0则返回总和大约sizhint字节的行(具体由缓冲区大小决定)。
代码如下:f.readlines()['dm:x:3:4:adm:/var/adm:/sbin/nologin\n', 'lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin\n', 'sync:x:5:0:sync:/sbin:/bin/sync\n', 'shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown\n', 'halt:x:7:0:halt:/sbin:/sbin/halt\n', 'mail:x:8:12:mail:/var/spool/mail:/sbin/nologin\n', ......
输出省略。
3.文件输出3.1.file.write(str)&&& 向文件中写入指定的字符串。
代码如下:&&& f = file('/root/test.py','w+')&&& f.write("print 'hello,world'")&&& f.read()''&&& f.close()&&& file('/root/test.py','r').read()"print 'hello,world'"
3.2.file.write(seq)
&&& 向文件写入字符串序列seq。seq是任何返回字符串的可迭代对象。
代码如下:&&& f = file('/root/test.py','a+')&&& codelst = ['\n','import os\n',"os.popen('ls').read()\n"]&&& f.writelines(codelst)&&& f.close()&&& file('/root/test.py','r').read()"print 'hello,world'\nimport os\nos.popen('ls').read()\n"
注意,文件写入的时候,不会自动加上换行符,必须手动加上。
4.文件移动
&&& 学过C语言的同学,一定对fseek()函数不陌生,在Python中,seek()方法是fseek()的替代者。
&&& seek(offset,whence=0)&&& 方法可以将文件游标移动到文件的任意位置。其中offset代表需要移动的偏移字节数,whence表示要从哪个位置开始偏移:&&& 0代表从文件开头开始算起,&&& 1代表从当前位置开始算起,&&& 2代表从文件末尾算起。
&&& 那我们如何知道当前文件游标在哪里呢?别担心,这里有个tell()方法可以返回当前文件游标的位置。
5.文件迭代
&&& 在Python中,文件不仅仅是一个对象,而且是一个可迭代对象!我们可以利用如下迭代方式,轻松的访问和处理文件内容,而不必全部读出(readlines)后再迭代(性能上差了很多哦!)
代码如下:for eachline in f:&&& #dealwith eachline of f
代码如下:&&& for eachline in f:...&&&& print eachline
6.os、os.path与文件os和os.path中提供了一些跟文件有关的接口,下面介绍一些常用的接口。其他接口可以自己查阅相关文档。
注意:以下函数传入的参数都是字符串形式的文件名字,文件名可由文件对象的name属性获得。
os.path.basename()
去掉目录路径,返回文件名
os.path.dirname()
去掉文件名,返回目录路径
os.path.getatime()os.path.getctime()os.path.getmtime()os.path.size()
返回文件的atime,ctime,mtime和大小
os.path.exists()
该文件或目录是否存在
os.path.abs()
指定路径是否为绝对路径
os.path.isdir()
路径是否存在且为目录
os.path.isfile()
路径是否存在且为文件。
os.path.islink()
指定路径是否存在且为一个符号链接 代码如下:&&& import os.path&&& f = open('/root/test.py','r')&&& os.path.basename(f.name)'test.py'&&& f.name'/root/test.py'&&& os.path.getsize(f.name)52&&& os.path.isabs(f.name)True&&& os.path.isdir(f.name)False
您可能感兴趣的文章:
上一篇:下一篇:
最 近 更 新
热 点 排 行
12345678910

我要回帖

更多关于 vlookup返回值错误 的文章

 

随机推荐