Python Forum
How to split name.jpg and get the string name
Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
How to split name.jpg and get the string name
#1
As a beginner, I have almost done what I want to do.

I can use python to resize photos, resize the excel table row heights, put photos in each row of column A. I can do that now.

But of course, I need the photos to match the names. Now I just need to match the photo with the name in column C.

I have a photo say 'fred.jpg' I want this photo in column 1 of the table. Somewhere in column C is the name 'fred'. (Actually all the names are Chinese.)

In this loop, let's say fred.jpg is the first filename

for filename in os.listdir(pathToFiles):
	if not (filename.endswith(fileEnding)):
		continue
TODO

1 For each filename which has the format 'name.jpg' get the string 'name'
2 Find that name in column C.
3 Get the row number of that name
4 put the photo in column A of that name row number

I'm not sure how to get the string name from name.jpg The rest I can do I think.
Next month I will get another 4 classes, about 160 students, I'm fed up doing this manually! Python to the rescue!
Reply
#2
os.path.splitext

>>> import os
>>> f = 'fred.jpg'
>>> f
'fred.jpg'
>>> os.path.splitext(f)
('fred', '.jpg')
Recommended Tutorials:
Reply
#3
If your string is just name.jpg, you can simply split the string:
>>> name, ext = 'name.jpg'.split('.')
>>> name
'name'
If you're dealing with more complicated file paths, you should take a look at os.path or pathlib
Reply
#4
Thanks, that did it! I used:

# put the pics in the excel file in column 1
for filename in os.listdir(pathToPhotos):
	if not (filename.endswith('.jpg')):
		continue
	for rowNum in range(beginRow, ws.max_row + 1):
		getName = filename.split('.')
		if (getName[0] == ws.cell(row=rowNum, column=col).value):
			print('found the name! Name is: %s ' % (getName[0]))
			print('Putting pic in row ' + str(rowNum))
			img = Image(pathToPhotos + filename)
			ws.add_image(img, 'A' + str(rowNum))
Which worked fine. However, other sheets in this excel file already had photos which I had manually inserted. Luckily, I saved the file as filename_copy.xlsx , because, when I looked, all the other photos for old classes were gone!! I do not know why!
I managed to copy the new class sheet with photos into the old excel file which saved the day.
Reply


Possibly Related Threads…
Thread Author Replies Views Last Post
  doing string split with 2 or more split characters Skaperen 22 2,567 Aug-13-2023, 01:57 AM
Last Post: Skaperen
Sad How to split a String from Text Input into 40 char chunks? lastyle 7 1,166 Aug-01-2023, 09:36 AM
Last Post: Pedroski55
  [split] Parse Nested JSON String in Python mmm07 4 1,551 Mar-28-2023, 06:07 PM
Last Post: snippsat
  Split string using variable found in a list japo85 2 1,314 Jul-11-2022, 08:52 AM
Last Post: japo85
  Split string knob 2 1,886 Nov-19-2021, 10:27 AM
Last Post: ghoul
  Split string between two different delimiters, with exceptions DreamingInsanity 2 2,050 Aug-24-2020, 08:23 AM
Last Post: DreamingInsanity
  split string enigma619 1 2,090 May-20-2020, 02:47 PM
Last Post: perfringo
  Split string with multiple delimiters and keep the string in "groups" DreamingInsanity 4 6,546 May-12-2020, 09:31 AM
Last Post: DeaD_EyE
  Split a long string into other strings with no delimiters/characters krewlaz 4 2,805 Nov-15-2019, 02:48 PM
Last Post: ichabod801
  input string split Eric7Giants 3 3,039 Nov-13-2019, 07:19 PM
Last Post: Gribouillis

Forum Jump:

User Panel Messages

Announcements
Announcement #1 8/1/2020
Announcement #2 8/2/2020
Announcement #3 8/6/2020