Trying to swap positions in a list
Writing a simple code to print a random list, the swap the first position integer with the last position integer and re-print the list. Keep getting error saying not subscriptable. This is for a basic python class but we are on Thanksgiving break and can't talk to professor, due when we get back.
import random
def main():
mylist=
for i in range(15):
mylist.append(random.randrange(0,25))
print(mylist)
def swap():
a, b = mylist.index[0], mylist.index[14]
mylist[b], mylist[a] = mylist[a], mylist[b]
print(mylist)
swap()
main()
python python-3.7
add a comment |
Writing a simple code to print a random list, the swap the first position integer with the last position integer and re-print the list. Keep getting error saying not subscriptable. This is for a basic python class but we are on Thanksgiving break and can't talk to professor, due when we get back.
import random
def main():
mylist=
for i in range(15):
mylist.append(random.randrange(0,25))
print(mylist)
def swap():
a, b = mylist.index[0], mylist.index[14]
mylist[b], mylist[a] = mylist[a], mylist[b]
print(mylist)
swap()
main()
python python-3.7
1
a
andb
will be set to the first and last elements of the list, so trying to accessmylist[a]
andmylist[b]
is wrong (a
andb
are not indices, they are the actual values). Trymylist[0], mylist[14] = a, b
instead.
– divesh premdeep
Nov 21 '18 at 1:12
add a comment |
Writing a simple code to print a random list, the swap the first position integer with the last position integer and re-print the list. Keep getting error saying not subscriptable. This is for a basic python class but we are on Thanksgiving break and can't talk to professor, due when we get back.
import random
def main():
mylist=
for i in range(15):
mylist.append(random.randrange(0,25))
print(mylist)
def swap():
a, b = mylist.index[0], mylist.index[14]
mylist[b], mylist[a] = mylist[a], mylist[b]
print(mylist)
swap()
main()
python python-3.7
Writing a simple code to print a random list, the swap the first position integer with the last position integer and re-print the list. Keep getting error saying not subscriptable. This is for a basic python class but we are on Thanksgiving break and can't talk to professor, due when we get back.
import random
def main():
mylist=
for i in range(15):
mylist.append(random.randrange(0,25))
print(mylist)
def swap():
a, b = mylist.index[0], mylist.index[14]
mylist[b], mylist[a] = mylist[a], mylist[b]
print(mylist)
swap()
main()
python python-3.7
python python-3.7
edited Nov 21 '18 at 5:22
Julian Peller
8941511
8941511
asked Nov 21 '18 at 1:06
Collin Dee CortezCollin Dee Cortez
101
101
1
a
andb
will be set to the first and last elements of the list, so trying to accessmylist[a]
andmylist[b]
is wrong (a
andb
are not indices, they are the actual values). Trymylist[0], mylist[14] = a, b
instead.
– divesh premdeep
Nov 21 '18 at 1:12
add a comment |
1
a
andb
will be set to the first and last elements of the list, so trying to accessmylist[a]
andmylist[b]
is wrong (a
andb
are not indices, they are the actual values). Trymylist[0], mylist[14] = a, b
instead.
– divesh premdeep
Nov 21 '18 at 1:12
1
1
a
and b
will be set to the first and last elements of the list, so trying to access mylist[a]
and mylist[b]
is wrong (a
and b
are not indices, they are the actual values). Try mylist[0], mylist[14] = a, b
instead.– divesh premdeep
Nov 21 '18 at 1:12
a
and b
will be set to the first and last elements of the list, so trying to access mylist[a]
and mylist[b]
is wrong (a
and b
are not indices, they are the actual values). Try mylist[0], mylist[14] = a, b
instead.– divesh premdeep
Nov 21 '18 at 1:12
add a comment |
2 Answers
2
active
oldest
votes
You need to hold one of the values in a variable and then swap.
def swap():
x = mylist[0]
mylist[0] = mylist[14]
mylist[14] = x
print(mylist)
add a comment |
You are swapping with indexes equal to the values in the list (instead of indexes).
Try:
mylist[0], mylist[-1] = mylist[-1], mylist[0]
On another observation, I believe you have to pass mylist to swap
as a parameter. (unless swap is defined in main).
add a comment |
Your Answer
StackExchange.ifUsing("editor", function () {
StackExchange.using("externalEditor", function () {
StackExchange.using("snippets", function () {
StackExchange.snippets.init();
});
});
}, "code-snippets");
StackExchange.ready(function() {
var channelOptions = {
tags: "".split(" "),
id: "1"
};
initTagRenderer("".split(" "), "".split(" "), channelOptions);
StackExchange.using("externalEditor", function() {
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled) {
StackExchange.using("snippets", function() {
createEditor();
});
}
else {
createEditor();
}
});
function createEditor() {
StackExchange.prepareEditor({
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: true,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: 10,
bindNavPrevention: true,
postfix: "",
imageUploader: {
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
},
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
});
}
});
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%2f53403901%2ftrying-to-swap-positions-in-a-list%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
2 Answers
2
active
oldest
votes
2 Answers
2
active
oldest
votes
active
oldest
votes
active
oldest
votes
You need to hold one of the values in a variable and then swap.
def swap():
x = mylist[0]
mylist[0] = mylist[14]
mylist[14] = x
print(mylist)
add a comment |
You need to hold one of the values in a variable and then swap.
def swap():
x = mylist[0]
mylist[0] = mylist[14]
mylist[14] = x
print(mylist)
add a comment |
You need to hold one of the values in a variable and then swap.
def swap():
x = mylist[0]
mylist[0] = mylist[14]
mylist[14] = x
print(mylist)
You need to hold one of the values in a variable and then swap.
def swap():
x = mylist[0]
mylist[0] = mylist[14]
mylist[14] = x
print(mylist)
answered Nov 21 '18 at 1:12
Cory LCory L
1599
1599
add a comment |
add a comment |
You are swapping with indexes equal to the values in the list (instead of indexes).
Try:
mylist[0], mylist[-1] = mylist[-1], mylist[0]
On another observation, I believe you have to pass mylist to swap
as a parameter. (unless swap is defined in main).
add a comment |
You are swapping with indexes equal to the values in the list (instead of indexes).
Try:
mylist[0], mylist[-1] = mylist[-1], mylist[0]
On another observation, I believe you have to pass mylist to swap
as a parameter. (unless swap is defined in main).
add a comment |
You are swapping with indexes equal to the values in the list (instead of indexes).
Try:
mylist[0], mylist[-1] = mylist[-1], mylist[0]
On another observation, I believe you have to pass mylist to swap
as a parameter. (unless swap is defined in main).
You are swapping with indexes equal to the values in the list (instead of indexes).
Try:
mylist[0], mylist[-1] = mylist[-1], mylist[0]
On another observation, I believe you have to pass mylist to swap
as a parameter. (unless swap is defined in main).
edited Nov 21 '18 at 1:26
answered Nov 21 '18 at 1:13
Chris CharleyChris Charley
3,66021618
3,66021618
add a comment |
add a comment |
Thanks for contributing an answer to Stack Overflow!
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
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%2f53403901%2ftrying-to-swap-positions-in-a-list%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
1
a
andb
will be set to the first and last elements of the list, so trying to accessmylist[a]
andmylist[b]
is wrong (a
andb
are not indices, they are the actual values). Trymylist[0], mylist[14] = a, b
instead.– divesh premdeep
Nov 21 '18 at 1:12