Search files into a directory / compatible Unix / Windows
up vote
0
down vote
favorite
i'm a beginner in Python, and try to use the os module to find and aggregate all files in a given folder, given a key word such as "example".
Based on what I found so far, here is my code :
def import_files_list(path, key_word):
files =
for i in os.listdir(path):
if os.path.isfile(os.path.join(path,i)) and key_word in i:
file_plus_path = path+i
pprint(file_plus_path)
files.append(file_plus_path)
return files
actual_dir = os.path.dirname(os.path.realpath(__file__))
wanted_dir = os.path.split(actual_dir)[0]
files_list = import_files_list(wanted_dir, 'example')
pprint(files_list)
The thing is that, instead of getting for instance :
'C:\Users\User\folder\example1.csv'
I'm getting :
'C:\Users\User\folderexample1.csv'
So this is not correct.
I don't want to hardcode anything such as "" to solve the problem, and I'm pretty sure I could also simplify the above code.
Could you help me and tell me here I am wrong ?
python
New contributor
add a comment |
up vote
0
down vote
favorite
i'm a beginner in Python, and try to use the os module to find and aggregate all files in a given folder, given a key word such as "example".
Based on what I found so far, here is my code :
def import_files_list(path, key_word):
files =
for i in os.listdir(path):
if os.path.isfile(os.path.join(path,i)) and key_word in i:
file_plus_path = path+i
pprint(file_plus_path)
files.append(file_plus_path)
return files
actual_dir = os.path.dirname(os.path.realpath(__file__))
wanted_dir = os.path.split(actual_dir)[0]
files_list = import_files_list(wanted_dir, 'example')
pprint(files_list)
The thing is that, instead of getting for instance :
'C:\Users\User\folder\example1.csv'
I'm getting :
'C:\Users\User\folderexample1.csv'
So this is not correct.
I don't want to hardcode anything such as "" to solve the problem, and I'm pretty sure I could also simplify the above code.
Could you help me and tell me here I am wrong ?
python
New contributor
add a comment |
up vote
0
down vote
favorite
up vote
0
down vote
favorite
i'm a beginner in Python, and try to use the os module to find and aggregate all files in a given folder, given a key word such as "example".
Based on what I found so far, here is my code :
def import_files_list(path, key_word):
files =
for i in os.listdir(path):
if os.path.isfile(os.path.join(path,i)) and key_word in i:
file_plus_path = path+i
pprint(file_plus_path)
files.append(file_plus_path)
return files
actual_dir = os.path.dirname(os.path.realpath(__file__))
wanted_dir = os.path.split(actual_dir)[0]
files_list = import_files_list(wanted_dir, 'example')
pprint(files_list)
The thing is that, instead of getting for instance :
'C:\Users\User\folder\example1.csv'
I'm getting :
'C:\Users\User\folderexample1.csv'
So this is not correct.
I don't want to hardcode anything such as "" to solve the problem, and I'm pretty sure I could also simplify the above code.
Could you help me and tell me here I am wrong ?
python
New contributor
i'm a beginner in Python, and try to use the os module to find and aggregate all files in a given folder, given a key word such as "example".
Based on what I found so far, here is my code :
def import_files_list(path, key_word):
files =
for i in os.listdir(path):
if os.path.isfile(os.path.join(path,i)) and key_word in i:
file_plus_path = path+i
pprint(file_plus_path)
files.append(file_plus_path)
return files
actual_dir = os.path.dirname(os.path.realpath(__file__))
wanted_dir = os.path.split(actual_dir)[0]
files_list = import_files_list(wanted_dir, 'example')
pprint(files_list)
The thing is that, instead of getting for instance :
'C:\Users\User\folder\example1.csv'
I'm getting :
'C:\Users\User\folderexample1.csv'
So this is not correct.
I don't want to hardcode anything such as "" to solve the problem, and I'm pretty sure I could also simplify the above code.
Could you help me and tell me here I am wrong ?
python
python
New contributor
New contributor
New contributor
asked Nov 19 at 14:14
SidGabriel
123
123
New contributor
New contributor
add a comment |
add a comment |
1 Answer
1
active
oldest
votes
up vote
0
down vote
accepted
Your problem is this line:
file_plus_path = path+i
Here you append one string to another, but without any delimiter between them. On the previous line you did it correctly: os.path.join(path,i)
.
So here's a way to correct that:
file_plus_path = os.path.join(path,i)
if os.path.isfile(file_plus_path) and key_word in i:
pprint(file_plus_path)
files.append(file_plus_path)
You're right ! It solved my mistake :) Thank you !
– SidGabriel
Nov 19 at 14:27
add a comment |
1 Answer
1
active
oldest
votes
1 Answer
1
active
oldest
votes
active
oldest
votes
active
oldest
votes
up vote
0
down vote
accepted
Your problem is this line:
file_plus_path = path+i
Here you append one string to another, but without any delimiter between them. On the previous line you did it correctly: os.path.join(path,i)
.
So here's a way to correct that:
file_plus_path = os.path.join(path,i)
if os.path.isfile(file_plus_path) and key_word in i:
pprint(file_plus_path)
files.append(file_plus_path)
You're right ! It solved my mistake :) Thank you !
– SidGabriel
Nov 19 at 14:27
add a comment |
up vote
0
down vote
accepted
Your problem is this line:
file_plus_path = path+i
Here you append one string to another, but without any delimiter between them. On the previous line you did it correctly: os.path.join(path,i)
.
So here's a way to correct that:
file_plus_path = os.path.join(path,i)
if os.path.isfile(file_plus_path) and key_word in i:
pprint(file_plus_path)
files.append(file_plus_path)
You're right ! It solved my mistake :) Thank you !
– SidGabriel
Nov 19 at 14:27
add a comment |
up vote
0
down vote
accepted
up vote
0
down vote
accepted
Your problem is this line:
file_plus_path = path+i
Here you append one string to another, but without any delimiter between them. On the previous line you did it correctly: os.path.join(path,i)
.
So here's a way to correct that:
file_plus_path = os.path.join(path,i)
if os.path.isfile(file_plus_path) and key_word in i:
pprint(file_plus_path)
files.append(file_plus_path)
Your problem is this line:
file_plus_path = path+i
Here you append one string to another, but without any delimiter between them. On the previous line you did it correctly: os.path.join(path,i)
.
So here's a way to correct that:
file_plus_path = os.path.join(path,i)
if os.path.isfile(file_plus_path) and key_word in i:
pprint(file_plus_path)
files.append(file_plus_path)
answered Nov 19 at 14:20
dsh
10.1k22141
10.1k22141
You're right ! It solved my mistake :) Thank you !
– SidGabriel
Nov 19 at 14:27
add a comment |
You're right ! It solved my mistake :) Thank you !
– SidGabriel
Nov 19 at 14:27
You're right ! It solved my mistake :) Thank you !
– SidGabriel
Nov 19 at 14:27
You're right ! It solved my mistake :) Thank you !
– SidGabriel
Nov 19 at 14:27
add a comment |
SidGabriel is a new contributor. Be nice, and check out our Code of Conduct.
SidGabriel is a new contributor. Be nice, and check out our Code of Conduct.
SidGabriel is a new contributor. Be nice, and check out our Code of Conduct.
SidGabriel is a new contributor. Be nice, and check out our Code of Conduct.
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53376503%2fsearch-files-into-a-directory-compatible-unix-windows%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown