Currently I'm working on a quiz game for a project which uses the spotify API. Our approach is to get get the data from the api and use it to make multiple choice questions about one specific artist. Right now we are stuck at the part where we connected to the api and have the raw data but can't turn it into (randomly generated) questions?
How should we start or approach it? Is there a way to code that or we want to make something that is not possible?
So far I haven't had any useful solution idea or find answers, similar quiz games usually use python dictionaries for storing questions.
How do I get this title using python?
I haven't tried anything yet since I do not know which library should I use and how.
Have a look at this StackOverflow Question - since your picture as music played by spotify, this question might help you.
How to get Spotify current playing song in Python (Windows)?
They are referring to this Library: https://github.com/XanderMJ/spotilib
If you wanna directly control spotify via Python you might also have a look at this library: https://pypi.org/project/pyspotify/
For interaction with the Spotify Web Api, this might also be helpful: https://spotipy.readthedocs.io/en/2.16.1/
we are trying to build an interactive CLI with Python 3.
We should ask some questions to the user, at the moment we are using this library: https://github.com/CITGuru/PyInquirer
We are using the type list to print the list of the choiches, but this can be quite annoying when the list is very long.
Do you have any clue about how we can implement a filter on the list as the user is typing? Something very similar to the autocomplete library for Javascript.
Thanks
One tool that I personally like a lot is the Click lib.
Here's the documentation part that talks about autocomplete:
https://click.palletsprojects.com/en/7.x/bashcomplete/
I hope it works the way you want it to.
I need a way to programmatically add a new contact to iPhone from a computer.
Preferably using Python.
Long story short, I have contacts extracted from my old phone, and I want to transfer them to my new iPhone.
A solution that comes to my mind is to fill an addressbook supported by iTunes and then synchronize it with iOS.
But I would like a clean, easy, direct approach over intermixing this and that to find out that it wouldn't work because of something idiotic popped up.
Is there any protocol specification for doing that, or a way to link to iTunes DLLs or dynlibs?
Or perhaps a tweak using Apple Script on Mac.
I solved my personal problem by constructing vCard file containing all contacts from my old phone, then transfering that file to my iPhone manually who happily offered to import all contacts from it into its contacts App.
VCard specification can be found on Wikipedia. It is one nice file format. I used version 2.1 and it worked.
I was afraid that iPhone would accept only XML vCard version, but it worked with 2.1.
That's what I really meant in my comment. I wasn't sure which vCard version iOS uses.
It was extremely easy as my old phone gave me all contacts as a bunch of individual vCard files. So I only needed a simple little program to combine them into one file.
Thanks to apraetor for a comment that gave me that idea.
But the way I wanted it done (as I explained in the question) is possible by using LibIMobileDevice library available at:
http://www.libimobiledevice.org/
I didn't have time to experiment but it should work. And anyone searching for a way to do what I wanted should know about this excellent library.
I'd like someone's answer with details on how it is done and the code (for other's benefit), as I wouldn't play with this for some time. I am currently very busy.
I suspect it is something like:
Get all contacts from iPhone
Add new ones or delete old ones
Synchronize back
as I didn't see anything
there hinting at direct contact manipulation.
Closed. This question needs to be more focused. It is not currently accepting answers.
Want to improve this question? Update the question so it focuses on one problem only by editing this post.
Closed 5 years ago.
Improve this question
I teach undergraduate statistics, and am interested in administering personalized online assignments. I have already solved one portion of the puzzle, the generation of multiple version of a question using latex/markdown + knitr/sweave, using seeds.
I am now interested in developing a web-based system, that would use the various versions generated, and administer a different one for each student, online. I have looked into several sites related to forms (google docs, wufoo, formsite etc.), but none of them allow programmatic creation of questionnaires.
I am tagging this with R since that is the language I am most familiar with, and is key to solving the first part of the problem. I know that there are several web-based frameworks for R, and was wondering whether any of them are suitable for this job.
I am not averse to solutions in other languages like Ruby, Python etc. But the key consideration is the ability to programatically deliver online assignments. I am aware of tools like WebWork, but they require the use of Perl and the interfaces are usually quite clunky.
Feel free to add tags to the post, if you think I have missed a framework that would be more suitable.
EDIT. Let me make it clear by giving an example. Currently, if I want to administer an assignment online, I could simply create a Google Form, send the link to my students, and collect all responses in a spreadsheet, and automatically grade it. This works, if I just have one version of the assignment.
My questions is, if I want to administer a different version of the assignment for each student, and collect their responses, how can I do that?
The way you have worded your question it's not really clear why you have to mark the students' work online. Especially since you say that you generate assignments using sweave. If you use R to generate the (randomised) questions, then you really have to use R to mark them (or output the data set).
For my courses, I use a couple of strategies.
For the end of year exam (~500 students), each student gets a unique data set. The students log on to a simple web-site (we use blackboard since the University already has it set up). All students answer the same questions, but use their own unique data set. For example, "What is the mean". The answers are marked offline using an R script.
In my introductory R course, students upload their R functions and I run and mark them off line. I use sweave to generate a unique pdf for each student. Their pdf shows where they lost marks. For example, they didn't use the correct named arguments.
Coupling a simple web-form with marking offline gives you a lot of flexibility and is fairly straightforward.
I found one possible solution that might work using the RGoogleDocs package. I am posting this as an answer only because it is long. I am still interested in better approaches, and hence will keep the question open.
Here is the gist of the idea, which is still untested.
Create multiple versions of each assignment using knitr/Sweave.
Upload them to GoogleDocs using uploadDoc.
Share one document per student using setAccess which modifies access controls.
Create a common Google Form to capture final answers for each student.
The advantage I see is two-fold. One, since all final answers get captured on a spreadsheet, I can access them with R and grade them automatically. Two, since I have access to all the completed assignments on Google Docs, I can skim through them and provide individual comments as required (or let some of my TAs do it).
I will provide an update, if I manage to get this working, and maybe even create an R package if it would be useful for others.
I know that this was asked a long time ago, but I think that today the best solution is the package exams plus Moodle.
The package exams can now generate XML Moodle questions that can be upload to Moodle platform as the students can solve the exercices on-line.
This is an example of a question made with exams package and uploaded to Moodle.
i just stumbled upon the ?exams package in R: Link to the CRAN site. could this be something for you?