Python Programming
 
Forums: » Register « |  User CP |  Games |  Calendar |  Members |  FAQs |  Sitemap |  Support | 
User Name:
Password:
Remember me

The Shed is going Social! Join us on FaceBook and Twitter and chime in on the conversation.

Go Back   Dev Shed ForumsProgramming LanguagesPython Programming

Reply
Add This Thread To:
  Del.icio.us   Digg   Google   Spurl   Blink   Furl   Simpy   Y! MyWeb 
Thread Tools Search this Thread Rate Thread Display Modes
 
Unread Dev Shed Forums Sponsor:
  #1  
Old November 6th, 2012, 02:12 PM
klskl klskl is offline
Registered User
Dev Shed Newbie (0 - 499 posts)
 
Join Date: Sep 2012
Posts: 10 klskl User rank is Just a Lowly Private (1 - 20 Reputation Level) 
Time spent in forums: 1 h 35 m 12 sec
Reputation Power: 0
This list.. calculate list ints?

Okey, I just posted here about objects in a list, I got a helpful answer very fast so I was thinking, why not get more help since it is much needed! It is still the list, right now my list looks something like this
Code:
mylist = [name 10, name2 15, name3 23]

This looks retarded I know, but I have the user input a first name, last name and a value into the list, what I want to do is to find the average of the values, if you understand?

I can't get it working, is that becouse i have mixed str and int in the list, is this even possible?

again, all help is appreciated!

Reply With Quote
  #2  
Old November 6th, 2012, 02:20 PM
Purity_Lake Purity_Lake is offline
Contributing User
Dev Shed Newbie (0 - 499 posts)
 
Join Date: Mar 2012
Posts: 33 Purity_Lake User rank is Just a Lowly Private (1 - 20 Reputation Level) 
Time spent in forums: 8 h 25 m 17 sec
Reputation Power: 2
ya its pretty possible

Code:
list = ['string', 14, '19', 'STRING']


with this list you can see there are two string @ indexes 0 and 3 and two ints @ the indexes 1 and 2
easiest way to add these ints is with a loop like this

Code:
result = 0

for i in list:
    if type(i) == type(1):
        # type(1) is an int obviously
        result += i


and thats it, you have added your ints together and stored the result in the variable 'result'

EDIT:
Also i'm not sure what your are trying to do with your list there is name name2 and name3 of type string that is stored from input? and the ints just the length of the name?

well if so you might want to look at this

Code:
print "Enter your full name:\n"
name1 = raw_input('> ')
name2 = raw_input('> ')
name3 = raw_input('> ')

list = [name1, len(name1), name2, len(name2), name3, len(name3)]

result = 0

for i in list:
     if type(i) == type(1):
          result += i

print "Your result is %d" %(result)

Reply With Quote
  #3  
Old November 6th, 2012, 02:27 PM
rrashkin's Avatar
rrashkin rrashkin is offline
Contributing User
Dev Shed Newbie (0 - 499 posts)
 
Join Date: May 2012
Location: 39N 104.28W
Posts: 97 rrashkin User rank is Just a Lowly Private (1 - 20 Reputation Level) 
Time spent in forums: 1 Day 15 h 24 m 4 sec
Reputation Power: 2
First of all, i think the syntax of the list as stated is wrong:
Code:
>>> mylist = [name 10, name2 15, name3 23]
  File "<stdin>", line 1
    mylist = [name 10, name2 15, name3 23]
                    ^
SyntaxError: invalid syntax


So if you fix that, then, yes, even what appear to be integers will be strings so you have to deal with that. How about this:
Code:
>>> mylist = ["name 10", "name2 15", "name3 23"]
>>> mylist=[i.split() for i in mylist]
>>> mylist
[['name', '10'], ['name2', '15'], ['name3', '23']]
>>> mylist=zip(*mylist)
>>> mylist
[('name', 'name2', 'name3'), ('10', '15', '23')]
>>> av=sum(map(int,mylist[1]))/len(mylist[1])
>>> av
16
>>>

Reply With Quote
  #4  
Old November 6th, 2012, 03:14 PM
klskl klskl is offline
Registered User
Dev Shed Newbie (0 - 499 posts)
 
Join Date: Sep 2012
Posts: 10 klskl User rank is Just a Lowly Private (1 - 20 Reputation Level) 
Time spent in forums: 1 h 35 m 12 sec
Reputation Power: 0
I'm sorry if i was unclear, it no syntax errorr, but it is hard to explain! still, very helpful, I think I can take it from here, thx guys.

Reply With Quote
  #5  
Old November 6th, 2012, 04:00 PM
Schol-R-LEA's Avatar
Schol-R-LEA Schol-R-LEA is offline
Commie Mutant Traitor
Dev Shed Intermediate (1500 - 1999 posts)
 
Join Date: Jun 2004
Location: Norcross, GA (again)
Posts: 1,785 Schol-R-LEA User rank is General 9th Grade (Above 100000 Reputation Level)Schol-R-LEA User rank is General 9th Grade (Above 100000 Reputation Level)Schol-R-LEA User rank is General 9th Grade (Above 100000 Reputation Level)Schol-R-LEA User rank is General 9th Grade (Above 100000 Reputation Level)Schol-R-LEA User rank is General 9th Grade (Above 100000 Reputation Level)Schol-R-LEA User rank is General 9th Grade (Above 100000 Reputation Level)Schol-R-LEA User rank is General 9th Grade (Above 100000 Reputation Level)Schol-R-LEA User rank is General 9th Grade (Above 100000 Reputation Level)Schol-R-LEA User rank is General 9th Grade (Above 100000 Reputation Level)Schol-R-LEA User rank is General 9th Grade (Above 100000 Reputation Level)Schol-R-LEA User rank is General 9th Grade (Above 100000 Reputation Level)Schol-R-LEA User rank is General 9th Grade (Above 100000 Reputation Level)Schol-R-LEA User rank is General 9th Grade (Above 100000 Reputation Level)Schol-R-LEA User rank is General 9th Grade (Above 100000 Reputation Level)Schol-R-LEA User rank is General 9th Grade (Above 100000 Reputation Level)Schol-R-LEA User rank is General 9th Grade (Above 100000 Reputation Level) 
Time spent in forums: 1 Month 2 Weeks 2 Days 18 h 21 m 8 sec
Reputation Power: 1569
Are you certain that it is a list that you want? The structure of the data seems more suited to a dictionary, with the name as the key and the score as the value:

Code:
mydict = {name: 10, name2: 15, name3: 23}


This seems like a better solution for the problem at hand, as well.
__________________
Rev First Speaker Schol-R-LEA;2 JAM LCF ELF KoR KCO BiWM TGIF
#define KINSEY (rand() % 7) λ Scheme is the Red Pill
Scheme in ShortUnderstanding the C/C++ Preprocessor
Taming PythonA Highly Opinionated Review of Programming Languages for the Novice, v1.1

FOR SALE: One ShapeSystem 2300 CMD, extensively modified for human use. Includes s/w for anthro, transgender, sex-appeal enhance, & Gillian Anderson and Jason D. Poit clone forms. Some wear. $4500 obo. tverres@et.ins.gov

Reply With Quote
Reply

Viewing: Dev Shed ForumsProgramming LanguagesPython Programming > This list.. calculate list ints?

Developer Shed Advertisers and Affiliates



Thread Tools  Search this Thread 
Search this Thread:

Advanced Search
Display Modes  Rate This Thread 
Rate This Thread:


Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

vB code is On
Smilies are On
[IMG] code is On
HTML code is Off
View Your Warnings | New Posts | Latest News | Latest Threads | Shoutbox
Forum Jump

Forums: » Register « |  User CP |  Games |  Calendar |  Members |  FAQs |  Sitemap |  Support | 
  
 


Powered by: vBulletin Version 3.0.5
Copyright ©2000 - 2013, Jelsoft Enterprises Ltd.

© 2003-2013 by Developer Shed. All rights reserved. DS Cluster - Follow our Sitemap