xls6-python解析properties文件

 
python笔记(一)获取当前目录路径和文件
 

一、获取当前路径

      1、使用sys.argv[0]

import sys
print sys.argv[0]
#输出
#本地路径

     

      2、os模块

复制代码
import  os
print os.getcwd() #获取当前工作目录路径
print os.path.abspath('.') #获取当前工作目录路径
print os.path.abspath('test.txt') #获取当前目录文件下的工作目录路径
print os.path.abspath('..') #获取当前工作的父目录 !注意是父目录路径
print os.path.abspath(os.curdir) #获取当前工作目录路径
复制代码

    3、改变当前目录

         1) 使用: os.chdir(path)。

         比如, 如果当前目录在 ‘E:’ 下面, 然后进入E 下面的files 文件 可以使用 os.chdir(E:files).

         之后,使用比如 test1 = open('file1.txt'),  打开的文件会是在这个 ‘E:files’ 目录下的文件,而不是 'E' 下的文件。

   

    4、组合路径返回

         os.path.join('file1','file2','file3')

         合并得到路径 file1/file2/file3

>>> print os.path.join('E:', 'file1', 'file2')
E:/file1/file2
>>> print os.path.join('/home', '/home/file1/', '/home/file1/file2/')
/home/file1/file2/

        no.2

复制代码
import os
root = os.getcwd()               #获得当前路径 /home/dir1
print root
#输出
#/home/dir1

name = "file1"                    #定义文件名字  
print(os.path.join(root, name))   #合并路径名字和文件名字,并打印
#输出
#/home/dir1/file1
复制代码

      

二、获得当前目录下所有文件

      1. os.walk() 用于在目录树种游走输出目录中的文件名字,向上或下;

复制代码
语法
os.walk(top[, topdown=True[, onerror=None[, followlinks=False]]])

参数: top -- 根目录下的每一个文件夹(包含它自己), 产生3-元组 (dirpath, dirnames, filenames)【文件夹路径,
文件夹名字, 文件名】。 topdown --可选,为True或者没有指定, 一个目录的的3-元组将比它的任何子文件夹的3-元组先产生 (目录自上而下)。
如果topdown为 False, 一个目录的3-元组将比它的任何子文件夹的3-元组后产生 (目录自下而上)。 onerror -- 可选,是一个函数; 它调用时有一个参数, 一个OSError实例。报告这错误后,继续walk,或者抛出exception终止walk。 followlinks -- 设置为 true,则通过软链接访问目录。
复制代码

    2.

复制代码
import os
root = os.getcwd()

def file_name(file_dir):
    for root, dirs, files in os.walk(file_dir):
        print "-----------"
        print root   #os.walk()所在目录
        print dirs   #os.walk()所在目录的所有目录名
        print files   #os.walk()所在目录的所有非目录文件名
        print " "

file_name(root)
复制代码

  -----------  ---------- ----

 

 

xls6-python解析properties文件

# -*- coding:utf-8 -*-
import time as t
import cx_Oracle as oracle
import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
import random,os,math,re,time
import properties09 as prop
def main():
file_path = r'D:ackupPycharmProjectscharm123prop.properties'
dictProperties=prop.Properties(file_path).getProperties()
print (dictProperties)
print (type(dictProperties))
print (len(dictProperties))
print (dictProperties['username'])
print (dictProperties['url'])
print (dictProperties['driver'])
hang1=1
try:
hang1=dictProperties['hang1']
except :
hang1=0
print (hang1)
hang1=1
try:
hang1=dictProperties['hang']
except :
hang1=0
print (hang1)
print(os.curdir)
print(os.pardir)
print(os.defpath)
print(os.path)


main()



import os


print("===获取当前文件目录===")
# 当前脚本工作的目录路径
print('os.getcwd() 前脚本工作的目录路径 : ',os.getcwd())
# os.path.abspath()获得绝对路径
print('os.path.abspath() 获得绝对路径 : ',os.path.abspath(os.path.dirname(__file__)))

print("=== 获取当前文件上层目录 ===")
print("=== 获取当前文件上层目录 ==1=",os.path.abspath(os.path.dirname(os.path.dirname(__file__))))
print("=== 获取当前文件上层目录 ==2=",os.path.abspath(os.path.dirname(os.getcwd())))
print("=== 获取当前文件上层目录 ==3=",os.path.abspath(os.path.join(os.getcwd(), "..")))
print("=== 获取当前文件上层目录 ==4=",os.path.dirname(os.getcwd()))
# os.path.join()连接目录名与文件或目录


print("==== 设置路径为当前文件上层目录的test_case文件夹====")
path = os.path.join(os.path.dirname(os.getcwd()), "test_case")
print("==== 设置路径为当前文件上层目录的test_case文件夹====",path)
print("==== 设置路径为当前文件上层目录的test_case文件夹====",os.path.join(os.path.dirname(os.getcwd()), "test_case"))



def zidian():
dict = {'Name': 'Runoob', 'Age': 7, 'Class': 'First'}

dict['Age'] = 88 # 更新 Age
dict['School'] = "添加信息" # 添加信息

print("dict['Age']: ", dict['Age'])
print("dict['School']: ", dict['School'])




#
# del dict['Name'] # 删除键 'Name'
# dict.clear() # 清空字典
# del dict # 删除字典
#
# print("dict['Age']: ", dict['Age'])
# print("dict['School']: "# 所谓元组的不可变指的是元组所指向的内存中的内容不可变。
# tup1 = (12, 34.56)
# tup2 = ('abc', 'xyz')
#
# # 以下修改元组元素操作是非法的。
# # tup1[0] = 100
#
# # 创建一个新的元组
# tup3 = tup1 + tup2
# print(tup1)
# print(tup2)
# print(tup3)
# print(tup3[0]), dict['School'])

#
# 关于元组是不可变的







# -*- coding:utf-8 -*-
import time as t
import cx_Oracle as oracle
import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
import random,os,math,re,time
class Properties(object):

def __init__(self, fileName):
self.fileName = fileName
self.properties = {}

def __getDict(self,strName,dictName,value):

if(strName.find('.')>0):
k = strName.split('.')[0]
dictName.setdefault(k,{})
return self.__getDict(strName[len(k)+1:],dictName[k],value)
else:
dictName[strName] = value
return
def getProperties(self):
try:
pro_file = open(self.fileName, 'r')
for line in pro_file.readlines():
line = line.strip().replace(' ', '')
if line.find("#")!=-1:
line=line[0:line.find('#')]
if line.find('=') > 0:
strs = line.split('=')
strs[1]= line[len(strs[0])+1:]
self.__getDict(strs[0].strip(),self.properties,strs[1].strip())
except:
raise
else:
pro_file.close()
return self.properties


#
# from PropertiesUtil import Properties
# dictProperties=Properties("global.properties").getProperties()
# print dictProperties
#

def main():
file_path = r'D:ackupPycharmProjectscharm123prop.properties'
dictProperties=Properties(file_path).getProperties()
print (dictProperties)
print (type(dictProperties))
print (len(dictProperties))
print (dictProperties['url'])
print (dictProperties['driver'])
hang1=1
try:
hang1=dictProperties['hang1']
except :
hang1=0

print (hang1)


# main()



def zidian():
dict = {'Name': 'Runoob', 'Age': 7, 'Class': 'First'}

dict['Age'] = 88 # 更新 Age
dict['School'] = "添加信息" # 添加信息

print("dict['Age']: ", dict['Age'])
print("dict['School']: ", dict['School'])




#
# del dict['Name'] # 删除键 'Name'
# dict.clear() # 清空字典
# del dict # 删除字典
#
# print("dict['Age']: ", dict['Age'])
# print("dict['School']: "# 所谓元组的不可变指的是元组所指向的内存中的内容不可变。
# tup1 = (12, 34.56)
# tup2 = ('abc', 'xyz')
#
# # 以下修改元组元素操作是非法的。
# # tup1[0] = 100
#
# # 创建一个新的元组
# tup3 = tup1 + tup2
# print(tup1)
# print(tup2)
# print(tup3)
# print(tup3[0]), dict['School'])

#
# 关于元组是不可变的















原文地址:https://www.cnblogs.com/xinxihua/p/12637320.html