From: lee on
Hi,

I have a value,

partintid = int(Screw plugg (91_10 -> untitled))

but i get ValueError: invalid literal for int(): Screw plugg (91_10 -
> untitled)
any help?

-
Sunny

From: Chris Rebert on
On Mon, Jul 26, 2010 at 3:25 AM, lee <san82moon(a)gmail.com> wrote:
> Hi,
>
> I have a value,
>
> partintid = int(Screw plugg  (91_10 -> untitled))
>
> but i get ValueError: invalid literal for int(): Screw plugg  (91_10 -
>> untitled)
> any help?

That is most certainly not your actual exact code, since it has a few
SyntaxErrors and thus Python would have bailed-out long before it ever
got the chance to raise ValueError. Please copy-and-paste the *actual
exact code* and exact error message.
Also, next time say what the desired output/behavior you're seeking is.

That being said, if your code is (as I suspect) in actuality:

partintid = int("Screw plugg  (91_10 -> untitled)")

then I would agree with int() and say that that string is nowhere
close to representing an integer (how precisely is "Screw" to be
interpreted as an integer, pray tell?); so what's so surprising about
getting an error when trying to convert it to one?

I suspect you're trying to extract 91 or 10 from the string. Use
string methods[1] to parse the desired numerical section out of the
string, and then pass the resulting numerical string to int(), which
will accept it without error and properly convert it.

If you want more detailed help, please provide a specification of
typical input strings and desired output integers.

[1]: http://docs.python.org/library/stdtypes.html#string-methods

Regards,
Chris
--
http://blog.rebertia.com
From: Chris Rebert on
> On Mon, Jul 26, 2010 at 4:25 PM, Chris Rebert <clp2(a)rebertia.com> wrote:
>> On Mon, Jul 26, 2010 at 3:25 AM, lee <san82moon(a)gmail.com> wrote:
>> > Hi,
>> >
>> > I have a value,
>> >
>> > partintid = int(Screw plugg  (91_10 -> untitled))
>> >
>> > but i get ValueError: invalid literal for int(): Screw plugg  (91_10 -
>> >> untitled)
>> > any help?
<snip>
>> I suspect you're trying to extract 91 or 10 from the string. Use
>> string methods[1] to parse the desired numerical section out of the
>> string, and then pass the resulting numerical string to int(), which
>> will accept it without error and properly convert it.
>>
>> If you want more detailed help, please provide a specification of
>> typical input strings and desired output integers.
>>
>> [1]: http://docs.python.org/library/stdtypes.html#string-methods

On Mon, Jul 26, 2010 at 4:03 AM, Sunny chilgod <san82moon(a)gmail.com> wrote:
> Hi Chris,
> Thanks for your help. but i need to to convert the whole string to int.
> heres my full code,
> ptid = 'item_01bom'
> so item_01bom is a field name in form, so i get its value,
> partintid = int(form[ptid]).  # the value of form[ptid] is 'Screw plugg
>  (91_10 - untitled)'
> Hence i get the error. hope i am clear now.

Nope, still vague. Which is your desired value for partintid: 91? 10?
9110? "91_10"? Something else?

Also, not to be unfriendly, but just note for future reference that
top-posting ( http://en.wikipedia.org/wiki/Top-posting ) is generally
avoided on this mailinglist/newsgroup.

Cheers,
Chris
--
http://blog.rebertia.com
From: Steven D'Aprano on
On Mon, 26 Jul 2010 04:12:33 -0700, Chris Rebert wrote:

> On Mon, Jul 26, 2010 at 4:03 AM, Sunny chilgod <san82moon(a)gmail.com>
> wrote:
>> Hi Chris,
>> Thanks for your help. but i need to to convert the whole string to int.
>> heres my full code,
>> ptid = 'item_01bom'
>> so item_01bom is a field name in form, so i get its value, partintid =
>> int(form[ptid]).  # the value of form[ptid] is 'Screw plugg
>>  (91_10 - untitled)'
>> Hence i get the error. hope i am clear now.
>
> Nope, still vague. Which is your desired value for partintid: 91? 10?
> 9110? "91_10"? Something else?


Well, if you interpret 'Screw plugg (91_10 - untitled)' as a base-256
number, the correct answer is:

147,334,663,384,405,567,160,096,068,524,905,866,724,622,858,761,848,595,862,392,584,788,047,651,881


Obviously.



--
Steven
From: lee on
On Jul 26, 4:30 pm, Steven D'Aprano <st...(a)REMOVE-THIS-
cybersource.com.au> wrote:
> On Mon, 26 Jul 2010 04:12:33 -0700, Chris Rebert wrote:
> > On Mon, Jul 26, 2010 at 4:03 AM, Sunny chilgod <san82m...(a)gmail.com>
> > wrote:
> >> Hi Chris,
> >> Thanks for your help. but i need to to convert the whole string to int..
> >> heres my full code,
> >> ptid = 'item_01bom'
> >> so item_01bom is a field name in form, so i get its value, partintid =
> >> int(form[ptid]).  # the value of form[ptid] is 'Screw plugg
> >>  (91_10 - untitled)'
> >> Hence i get the error. hope i am clear now.
>
> > Nope, still vague. Which is your desired value for partintid: 91? 10?
> > 9110? "91_10"? Something else?
>
> Well, if you interpret 'Screw plugg (91_10 - untitled)' as a base-256
> number, the correct answer is:
>
> 147,334,663,384,405,567,160,096,068,524,905,866,724,622,858,761,848,595,862,392,584,788,047,651,881
>
> Obviously.
>
> --
> Steven

Hi,

i got the value wrong. sorry for the mistake. i get a int value like
"01", so no issue converting it to integer.
thanks.