-8
sales = ['$1.21', '$2.29', '$14.52', '$6.13', '$24.36', '$33.85', '$1.92']

print(sales.strip('$'))

basically any scenario where you are given values with the $ sign and you need them gone, what is the best way to get rid of the dollar sign in python?

amesj7595
  • 55
  • 1
  • 4
  • `sales = ['$1.21', '$2.29', '$14.52', '$6.13', '$24.36', '$33.85', '$1.92'] print([s.lstrip("$") for s in sales])` that works! Thanks to RoadRunner! – amesj7595 Jan 31 '20 at 06:25

5 Answers5

3

Strip from the left with str.lstrip():

>>> sales = ['$1.21', '$2.29', '$14.52', '$6.13', '$24.36', '$33.85', '$1.92']
>>> [s.lstrip("$") for s in sales]
['1.21', '2.29', '14.52', '6.13', '24.36', '33.85', '1.92']
RoadRunner
  • 25,803
  • 6
  • 42
  • 75
  • ``sales = ['$1.21', '$2.29', '$14.52', '$6.13', '$24.36', '$33.85', '$1.92'] print([s.lstrip("$") for s in sales]) `` it works! Thanks :) – amesj7595 Jan 31 '20 at 06:22
3

You can strip them:

list(map(lambda x: x.strip('$'), sales))
Austin
  • 25,759
  • 4
  • 25
  • 48
1

I will give an example of split by '$'

sales = ['$1.21', '$2.29', '$14.52', '$6.13', '$24.36', '$33.85', '$1.92']
[s.split('$')[1] for s in sales]
['1.21', '2.29', '14.52', '6.13', '24.36', '33.85', '1.92']
Yaman Ahlawat
  • 477
  • 6
  • 17
0

Since $ sign will always be at 1st position, a simple list comprehension should be enough.

sales = ['$1.21', '$2.29', '$14.52', '$6.13', '$24.36', '$33.85', '$1.92']

print(s[1:] for s in sales)
BATMAN
  • 375
  • 2
  • 14
0

Simple method

sales = [sales[i].strip('$') for i in range(len(sales))]

This outputs

['1.21', '2.29', '14.52', '6.13', '24.36', '33.85', '1.92']
Swati Srivastava
  • 1,102
  • 1
  • 12
  • 18