python按行读取文件 去掉换行符"\n"

转自:http://blog.csdn.net/ysdaniel/article/details/7970883

eg:

[python]  view plain copy
  1. #! /usr/bin/python  
  2. import sys  
  3. import string  
  4. import os  
  5. base_dir="/home/qinjianwang/mtr_dir/2012_09_12/tw"  
  6. as_uniq_info=base_dir + "/as_uniq_info"  
  7. get_line_num="wc -l " + as_uniq_info + " | awk '{print $1}'" ###get the lines of "as_uniq_info"  
  8. line_num = os.popen(get_line_num).read().strip('\n')  
  9. global VEXNUM   
[python]  view plain copy
  1. VEXNUM = string.atoi(line_num)  

python 字符串连接

[python]  view plain copy
  1. base_dir="/home/qinjianwang/mtr_dir/2012_09_12/tw"  
  2. as_uniq_info=base_dir + "/as_uniq_info"  

有:as_uniq_info="/home/qinjianwang/mtr_dir/2012_09_12/tw/as_uniq_info"

需要注意以下这句:

[python]  view plain copy
  1. get_line_num="wc -l " + as_uniq_info + " | awk '{print $1}'" ###get the lines of "as_uniq_info"  
注意1: 拼接shell命令时,需要引用python中的变量as_uniq_info,as_uniq_info单独拿出来,再拼接其它命令,不要写成下面这样:

[python]  view plain copy
  1. get_line_num="wc -l as_uniq_info | awk '{print $1}'"  
 这样写会造成shell无法正确替换python中的变量as_uniq_info。

注意2:拼接shell命令时,要注意引号中命令间的留空,如以下

[python]  view plain copy
  1. "wc -l " 和  " | awk '{print $1}'"  
引号"wc -l “中的 -l 后面就需要留空,要注意。


python 调用 shell

get_line_num="wc -l as_uniq_info | awk '{print $1}'" ###get the lines of "as_uniq_info"
line_num = os.popen(get_line_num).read().strip('\n')

 get_line_num 作为shell执行的命令,会取得文件as_uniq_info文件的行数

os.popen(get_line_num):执行shell

get_line_num = os.popen(get_line_num).read():调用read,赋值给get_line_num,此时get_line_num中含有一个换行符("\n")。

os.popen(get_line_num).read().strip('\n'):去掉换行符

 

shell 引用python变量

[python]  view plain copy
  1. line_num = os.popen(get_line_num)  

引用了python中的get_line_num变量。

 

python引用shell中值

[python]  view plain copy
  1. line_num = os.popen(get_line_num).read()  

执行完shell后,通过read()函数,赋值给python中的变量line_num

python 去掉换行符"\n" 

[python]  view plain copy
  1. line_num = os.popen(get_line_num).read().strip('\n')  

通过strip()函数,去掉换行符"\n" 

 

python按行读取文件 去掉换行符"\n"

[python]  view plain copy
  1. for line in file.readlines():  
  2.      line=line.strip('\n')  

 Python 字符转实型 

[python]  view plain copy
  1. b="123.678"  
  2. >>> string.atof(b)     
  3. 123.678  


 

 Python 字符转整型 

[python]  view plain copy
  1. VEXNUM = string.at

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值