Author: Charles Dierbach
Publisher: John Wiley & Sons
Release Date: 2012-12-25
Introduction to Computer Science Using Python: A Computational Problem–Solving Focus introduces readers to programming and computational problem–solving via a back–to–basics, step–by–step, objects–late approach that makes this book easy to teach and learn from. Readers are provided with a thorough conceptual grounding in computational problem solving before introducing them to specific Python syntax, thus giving them the background to become successful programmers in any language. Dierbach also offers readers a thorough grounding in imperative programming before introducing them to object–oriented programming. His step–by–step pedagogical approach makes this an accessible and reader–friendly introduction to programming that eases readers into program–writing through a variety of hands–on exercises.
Classroom-tested by tens of thousands of students, this new edition of the bestselling intro to programming book is for anyone who wants to understand computer science. Learn about design, algorithms, testing, and debugging. Discover the fundamentals of programming with Python 3.6--a language that's used in millions of devices. Write programs to solve real-world problems, and come away with everything you need to produce quality code. This edition has been updated to use the new language features in Python 3.6.
Author: John M. Zelle
Publisher: Franklin, Beedle & Associates, Inc.
Release Date: 2004
This book is suitable for use in a university-level first course in computing (CS1), as well as the increasingly popular course known as CS0. It is difficult for many students to master basic concepts in computer science and programming. A large portion of the confusion can be blamed on the complexity of the tools and materials that are traditionally used to teach CS1 and CS2. This textbook was written with a single overarching goal: to present the core concepts of computer science as simply as possible without being simplistic.
Perkovic's Introduction to Programming Using Python: An Application Development Focus, 2e is more than just an introduction to programming. It is an inclusive introduction to Computer Science that takes the pedagogical approach of "the right tool for the job at the right moment," and focuses on application development. The approach is hands-on and problem-oriented, with practice problems and solutions appearing throughout the text. The text is imperative-first, but does not shy away from discussing objects early where appropriate. Discussions of user-defined classes and Object-Oriented Programming appear later in the text, when students have more background and concepts can be motivated. Chapters include an introduction to problem solving techniques and classical algorithms, problem-solving and programming and ways to apply core skills to application development. This edition also includes examples and practice problems provided within a greater variety of domains. It also includes case studies integrated into additional chapters, providing students with real life applications using the concepts and tools covered in the chapters.
Author: Mark J. Johnson
Publisher: CRC Press
Release Date: 2018-04-17
A Concise Introduction to Programming in Python, Second Edition provides a hands-on and accessible introduction to writing software in Python, with no prior programming experience required. The Second Edition was thoroughly reorganized and rewritten based on classroom experience to incorporate: A spiral approach, starting with turtle graphics, and then revisiting concepts in greater depth using numeric, textual, and image data Clear, concise explanations written for beginning students, emphasizing core principles A variety of accessible examples, focusing on key concepts Diagrams to help visualize new concepts New sections on recursion and exception handling, as well as an earlier introduction of lists, based on instructor feedback The text offers sections designed for approximately one class period each, and proceeds gradually from procedural to object-oriented design. Examples, exercises, and projects are included from diverse application domains, including finance, biology, image processing, and textual analysis. It also includes a brief "How-To" sections that introduce optional topics students may be interested in exploring. The text is written to be read, making it a good fit in flipped classrooms. Designed for either classroom use or self-study, all example programs and solutions to odd-numbered exercises (except for projects) are available at: http://www.central.edu/go/conciseintro/.
Author: John S. Conery
Publisher: CRC Press
Release Date: 2014-09-24
An Active Learning Approach to Teaching the Main Ideas in Computing Explorations in Computing: An Introduction to Computer Science and Python Programming teaches computer science students how to use programming skills to explore fundamental concepts and computational approaches to solving problems. Tbook gives beginning students an introduction to computer science concepts and computer programming. Designed for CS0 and CS1 courses, it is very well suited for alternative lecture styles, including flipped classrooms. Prepares Students for Advanced Work in Computer Science A revised and updated version of the author’s Explorations in Computing: An Introduction to Computer Science, this text incorporates two major differences. It now uses Python, instead of Ruby, as the lab software so that students can seamlessly transition from introductory projects to more advanced studies in later courses. The book also introduces Python programming, providing students with sufficient programming skills so they can implement their own programs. Practical, Step-by-Step Projects The interactive lab projects in each chapter allow students to examine important ideas in computer science, particularly how algorithms offer computational solutions to problems. Students can type expressions, view results, and run experiments that help them understand the concepts in a hands-on way. Web Resources The Python software modules for each lab project are available on the author’s website. The modules include data files and sample Python code that students can copy and modify. In addition, the site provides a lab manual of installation instructions and tips for editing programs and running commands in a terminal emulator.
Author: Ana Bell
Publisher: Pearson Professional
Release Date: 2018-03-28
Summary Get Programming: Learn to code with Python introduces you to the world of writing computer programs without drowning you in confusing jargon or theory that make getting started harder than it should be. Filled with practical examples and step-by-step lessons using the easy-on-the-brain Python language, this book will get you programming in no time! Purchase of the print book includes a free eBook in PDF, Kindle, and ePub formats from Manning Publications. About the Technology Let''s face it. The only way to learn computer programming is to do it. Whether you want to skill up for your next job interview or just get a few pet projects done, programming can be an amazing tool. This book is designed especially for beginners, helping them learn to program hands on, step by step, project by project. It''s time to get programming! About the Book Get Programming: Learn to code with Python teaches you the basics of computer programming using the Python language. In this exercise-driven book, you''ll be doing something on nearly every page as you work through 38 compact lessons and 7 engaging capstone projects. By exploring the crystal-clear illustrations, exercises that check your understanding as you go, and tips for what to try next, you''ll start thinking like a programmer in no time. What''s Inside Programming skills you can use in any language Learn to code--no experience required Learn Python, the language for beginners Dozens of exercises and examples help you learn by doing About the Reader No prior programming experience needed.. About the Author Ana Bell is an MIT lecturer and scientist who teaches the popular course, Introduction to Computer Science and Programming Using Python. Table of Contents LEARNING HOW TO PROGRAM Lesson 1 - Why should you learn how to program? Lesson 2 - Basic principles of learning a programming language UNIT 1 - VARIABLES, TYPES, EXPRESSIONS, AND STATEMENTS Lesson 3 - Introducing Python: a programming language Lesson 4 - Variables and expressions: giving names and values to things Lesson 5 - Object types and statements of code 46 Lesson 6 - Capstone project: your first Python program-convert hours to minutes UNIT 2 - STRINGS, TUPLES, AND INTERACTING WITH THE USER Lesson 7 - Introducing string objects: sequences of characters Lesson 8 - Advanced string operations Lesson 9 - Simple error messages Lesson 10 - Tuple objects: sequences of any kind of object Lesson 11 - Interacting with the user Lesson 12 - Capstone project: name mashup UNIT 3 - MAKING DECISIONS IN YOUR PROGRAMS Lesson 13 - Introducing decisions in programs Lesson 14 - Making more-complicated decisions Lesson 15 - Capstone project: choose your own adventure UNIT 4 - REPEATING TASKS Lesson 16 - Repeating tasks with loops Lesson 17 - Customizing loops Lesson 18 - Repeating tasks while conditions hold Lesson 19 - Capstone project: Scrabble, Art Edition UNIT 5 - ORGANIZING YOUR CODE INTO REUSABLE BLOCKS Lesson 20 - Building programs to last Lesson 21 - Achieving modularity and abstraction with functions Lesson 22 - Advanced operations with functions Lesson 23 - Capstone project: analyze your friends UNIT 6 - WORKING WITH MUTABLE DATA TYPES Lesson 24 - Mutable and immutable objects Lesson 25 - Working with lists Lesson 26 - Advanced operations with lists Lesson 27 - Dictionaries as maps between objects Lesson 28 - Aliasing and copying lists and dictionaries Lesson 29 - Capstone project: document similarity UNIT 7 - MAKING YOUR OWN OBJECT TYPES BY USING OBJECT-ORIENTED PROGRAMMING Lesson 30 - Making your own object types Lesson 31 - Creating a class for an object type Lesson 32 - Working with your own object types Lesson 33 - Customizing classes Lesson 34 - Capstone project: card game UNIT 8 - USING LIBRARIES TO ENHANCE YOUR PROGRAMS Lesson 35 - Useful libraries Lesson 36 - Testing and debugging your programs Lesson 37 - A library for graphical user interfaces Lesson 38 - Capstone project: game of tag Appendix A - Answers to lesson exercises Appendix B - Python cheat sheet Appendix C - Interesting Python libraries
Author: Andrew Hunt
Publisher: Addison-Wesley Professional
Release Date: 1999-10-20
What others in the trenches say about The Pragmatic Programmer... “The cool thing about this book is that it’s great for keeping the programming process fresh. The book helps you to continue to grow and clearly comes from people who have been there.” —Kent Beck, author of Extreme Programming Explained: Embrace Change “I found this book to be a great mix of solid advice and wonderful analogies!” —Martin Fowler, author of Refactoring and UML Distilled “I would buy a copy, read it twice, then tell all my colleagues to run out and grab a copy. This is a book I would never loan because I would worry about it being lost.” —Kevin Ruland, Management Science, MSG-Logistics “The wisdom and practical experience of the authors is obvious. The topics presented are relevant and useful.... By far its greatest strength for me has been the outstanding analogies—tracer bullets, broken windows, and the fabulous helicopter-based explanation of the need for orthogonality, especially in a crisis situation. I have little doubt that this book will eventually become an excellent source of useful information for journeymen programmers and expert mentors alike.” —John Lakos, author of Large-Scale C++ Software Design “This is the sort of book I will buy a dozen copies of when it comes out so I can give it to my clients.” —Eric Vought, Software Engineer “Most modern books on software development fail to cover the basics of what makes a great software developer, instead spending their time on syntax or technology where in reality the greatest leverage possible for any software team is in having talented developers who really know their craft well. An excellent book.” —Pete McBreen, Independent Consultant “Since reading this book, I have implemented many of the practical suggestions and tips it contains. Across the board, they have saved my company time and money while helping me get my job done quicker! This should be a desktop reference for everyone who works with code for a living.” —Jared Richardson, Senior Software Developer, iRenaissance, Inc. “I would like to see this issued to every new employee at my company....” —Chris Cleeland, Senior Software Engineer, Object Computing, Inc. “If I’m putting together a project, it’s the authors of this book that I want. . . . And failing that I’d settle for people who’ve read their book.” —Ward Cunningham Straight from the programming trenches, The Pragmatic Programmer cuts through the increasing specialization and technicalities of modern software development to examine the core process--taking a requirement and producing working, maintainable code that delights its users. It covers topics ranging from personal responsibility and career development to architectural techniques for keeping your code flexible and easy to adapt and reuse. Read this book, and you'll learn how to Fight software rot; Avoid the trap of duplicating knowledge; Write flexible, dynamic, and adaptable code; Avoid programming by coincidence; Bullet-proof your code with contracts, assertions, and exceptions; Capture real requirements; Test ruthlessly and effectively; Delight your users; Build teams of pragmatic programmers; and Make your developments more precise with automation. Written as a series of self-contained sections and filled with entertaining anecdotes, thoughtful examples, and interesting analogies, The Pragmatic Programmer illustrates the best practices and major pitfalls of many different aspects of software development. Whether you're a new coder, an experienced programmer, or a manager responsible for software projects, use these lessons daily, and you'll quickly see improvements in personal productivity, accuracy, and job satisfaction. You'll learn skills and develop habits and attitudes that form the foundation for long-term success in your career. You'll become a Pragmatic Programmer.
Author: Mark J. Guzdial
Release Date: 2015-02-02
NOTE: You are purchasing a standalone product; MyProgrammingLab does not come packaged with this content. If you would like to purchase both the physical text and MyProgrammingLab search for 0134059840 / 9780134059846 Introduction to Computing and Programming in Python plus MyProgrammingLab with Pearson eText -- Access Card Package, 4/e Package consists of: 0205891454 / 9780205891450 MyProgrammingLab with Pearson eText -- Access Card -- for Introduction to Computing and Programming in Python 0134025547 / 9780134025544 Introduction to Computing and Programming in Python, 4/e MyProgrammingLab should only be purchased when required by an instructor. Social Computing and Programming with Python Introduction to Computing and Programming in Python is a uniquely researched and up-to-date volume that is widely recognized for its successful introduction to the subject of Media Computation. Emphasizing creativity, classroom interaction, and in-class programming examples, Introduction to Computing and Programming in Python takes a bold and unique approach to computation that engages students and applies the subject matter to the relevancy of digital media. The Fourth Edition teaches students to program in an effort to communicate via social computing outlets, providing a unique approach that serves the interests of a broad range of students. Also Available with MyProgrammingLab® This title is also available with MyProgrammingLab — an online homework, tutorial, and assessment program designed to work with this text to engage students and improve results. Within its structured environment, students practice what they learn, test their understanding, and pursue a personalized study plan that helps them better absorb course material and understand difficult concepts. Students, if interested in purchasing this title with MyProgrammingLab, ask your instructor for the correct package ISBN and Course ID. Instructors, contact your Pearson representative for more information.
Author: Y. Daniel Liang
Publisher: Prentice Hall
Release Date: 2013
NOTE: You are purchasing a standalone product; MyProgrammingLab does not come packaged with this content. If you would like to purchase both the physical text and MyProgrammingLab search for ISBN-10: 0133050556/ISBN-13: 9780133050554. That package includes ISBN-10: 0132747189/ISBN-13: 9780132747189 and ISBN-10: 0133019861/ISBN-13: 9780133019865 . MyProgrammingLab should only be purchased when required by an instructor. Introduction to Programming Using Python is intended for use in the introduction to programming course. Daniel Liang is known for his "fundamentals-first" approach to teaching programming concepts and techniques. "Fundamentals-first" means that students learn fundamental programming concepts like selection statements, loops, and functions, before moving into defining classes. Students learn basic logic and programming concepts before moving into object-oriented programming, and GUI programming. Another aspect of Introduction to Programming Using Python is that in addition to the typical programming examples that feature games and some math, Liang gives an example or two early in the chapter that uses a simple graphic to engage the students. Rather than asking them to average 10 numbers together, they learn the concepts in the context of a fun example that generates something visually interesting. Using the graphics examples is optional in this textbook. Turtle graphics can be used in Chapters 1-5 to introduce the fundamentals of programming and Tkinter can be used for developing comprehensive graphical user interfaces and for learning object-oriented programming.
Author: Robert Sedgewick
Publisher: Addison-Wesley Professional
Release Date: 2015-05-27
Today, anyone in a scientific or technical discipline needs programming skills. Python is an ideal first programming language, and Introduction to Programming in Python is the best guide to learning it. Princeton University’s Robert Sedgewick, Kevin Wayne, and Robert Dondero have crafted an accessible, interdisciplinary introduction to programming in Python that emphasizes important and engaging applications, not toy problems. The authors supply the tools needed for students to learn that programming is a natural, satisfying, and creative experience. This example-driven guide focuses on Python’s most useful features and brings programming to life for every student in the sciences, engineering, and computer science. Coverage includes Basic elements of programming: variables, assignment statements, built-in data types, conditionals, loops, arrays, and I/O, including graphics and sound Functions, modules, and libraries: organizing programs into components that can be independently debugged, maintained, and reused Object-oriented programming and data abstraction: objects, modularity, encapsulation, and more Algorithms and data structures: sort/search algorithms, stacks, queues, and symbol tables Examples from applied math, physics, chemistry, biology, and computer science—all compatible with Python 2 and 3 Drawing on their extensive classroom experience, the authors provide Q&As, exercises, and opportunities for creative practice throughout. An extensive amount of supplementary information is available at introcs.cs.princeton.edu/python. With source code, I/O libraries, solutions to selected exercises, and much more, this companion website empowers people to use their own computers to teach and learn the material.
Discovering Computer Science: Interdisciplinary Problems, Principles, and Python Programming introduces computational problem solving as a vehicle of discovery in a wide variety of disciplines. With a principles-oriented introduction to computational thinking, the text provides a broader and deeper introduction to computer science than typical introductory programming books. Organized around interdisciplinary problem domains, rather than programming language features, each chapter guides students through increasingly sophisticated algorithmic and programming techniques. The author uses a spiral approach to introduce Python language features in increasingly complex contexts as the book progresses. The text places programming in the context of fundamental computer science principles, such as abstraction, efficiency, and algorithmic techniques, and offers overviews of fundamental topics that are traditionally put off until later courses. The book includes thirty well-developed independent projects that encourage students to explore questions across disciplinary boundaries. Each is motivated by a problem that students can investigate by developing algorithms and implementing them as Python programs. The book's accompanying website — http://discoverCS.denison.edu — includes sample code and data files, pointers for further exploration, errata, and links to Python language references. Containing over 600 homework exercises and over 300 integrated reflection questions, this textbook is appropriate for a first computer science course for computer science majors, an introductory scientific computing course or, at a slower pace, any introductory computer science course.
Deep learning simplified by taking supervised, unsupervised, and reinforcement learning to the next level using the Python ecosystem Key Features Build deep learning models with transfer learning principles in Python implement transfer learning to solve real-world research problems Perform complex operations such as image captioning neural style transfer Book Description Transfer learning is a machine learning (ML) technique where knowledge gained during training a set of problems can be used to solve other similar problems. The purpose of this book is two-fold; firstly, we focus on detailed coverage of deep learning (DL) and transfer learning, comparing and contrasting the two with easy-to-follow concepts and examples. The second area of focus is real-world examples and research problems using TensorFlow, Keras, and the Python ecosystem with hands-on examples. The book starts with the key essential concepts of ML and DL, followed by depiction and coverage of important DL architectures such as convolutional neural networks (CNNs), deep neural networks (DNNs), recurrent neural networks (RNNs), long short-term memory (LSTM), and capsule networks. Our focus then shifts to transfer learning concepts, such as model freezing, fine-tuning, pre-trained models including VGG, inception, ResNet, and how these systems perform better than DL models with practical examples. In the concluding chapters, we will focus on a multitude of real-world case studies and problems associated with areas such as computer vision, audio analysis and natural language processing (NLP). By the end of this book, you will be able to implement both DL and transfer learning principles in your own systems. What you will learn Set up your own DL environment with graphics processing unit (GPU) and Cloud support Delve into transfer learning principles with ML and DL models Explore various DL architectures, including CNN, LSTM, and capsule networks Learn about data and network representation and loss functions Get to grips with models and strategies in transfer learning Walk through potential challenges in building complex transfer learning models from scratch Explore real-world research problems related to computer vision and audio analysis Understand how transfer learning can be leveraged in NLP Who this book is for Hands-On Transfer Learning with Python is for data scientists, machine learning engineers, analysts and developers with an interest in data and applying state-of-the-art transfer learning methodologies to solve tough real-world problems. Basic proficiency in machine learning and Python is required.
Author: Kent D. Lee
Release Date: 2015-01-07
This easy-to-follow and classroom-tested textbook guides the reader through the fundamentals of programming with Python, an accessible language which can be learned incrementally. Features: incudes numerous examples and practice exercises throughout the text, with additional exercises, solutions and review questions at the end of each chapter; highlights the patterns which frequently appear when writing programs, reinforcing the application of these patterns for problem-solving through practice exercises; introduces the use of a debugger tool to inspect a program, enabling students to discover for themselves how programs work and enhance their understanding; presents the Tkinter framework for building graphical user interface applications and event-driven programs; provides instructional videos and additional information for students, as well as support materials for instructors, at an associated website.