Introdução à Ciência da Computação com Python Parte 1 (Coursera)

Introdução à Ciência da Computação com Python Parte 1 (Coursera)

Bem vindo ao curso de Introdução à Ciência da Computação destinado aos alunos regulares da Universidade de São Paulo e a todos os demais interessados em aprender não só a programar em Python mas também os conceitos básicos da Ciência Computação!

Class Deals by MOOC List - Click here and see Coursera's Active Discounts, Deals, and Promo Codes.

Aqui você irá aprender os principais conceitos introdutórios de Ciência da Computação e também aprenderá a desenvolver pequenos programas na linguagem Python.
Este curso não possui pré-requisitos. Em particular, não é esperado que você tenha qualquer experiência prévia em programação.
O objetivo principal é desenvolver o raciocínio aplicado na formulação e resolução de problemas computacionais, ensinar como abordar e resolver problemas computacionais.
O ato de programar é uma ferramenta útil para trabalhar o raciocínio mencionado acima, bem como tornar mais concretos outros conceitos comuns em Ciência da Computação. Bom curso!

Syllabus

WEEK 1
Apresentação e Introdução ao Curso
Sejam bem vindos! Esta é a nossa primeira semana de curso. Daremos uma noção do que será o curso e apresentaremos uma visão geral sobre a área da computação e a linguagem Python.

WEEK 2
Introdução ao Python
Na Semana 2, teremos uma introdução à linguagem de programação Python. Iremos aprender o que são variáveis, os tipos de dados existentes e para que serve o comando input e print. Faremos também nosso primeiro programa. Mãos à obra ;-)

WEEK 3
Condicionais - if...else
Nesta semana estudaremos os desvios condicionais que você poderá implementar em seus programas, usando o comando "if..else". Além disso, estudaremos variáveis e expressões booleanas. Bom trabalho!

WEEK 4
Repetição - while
Muitas novidades para semana 4. Começaremos vendo como é feito um programa quando temos repetição de código. Trabalharemos com indicadores de passagem e aprenderemos a utilizar o depurador (Debbuger) que faz o acompanhamento da execução do programa, auxiliando o entendimento e a detecção de possíveis erros. Mãos à obra ;-)

WEEK 5
Funções
Semana 5, é hora de aprendermos a fazer e utilizar funções. Vamos começar... ;-)

WEEK 6
Depuração e refatoração
Nesta semana vamos pensar como melhorar programas através de refatoração e da utilização do depurador para acompanhar o funcionamento de funções. A tarefa desta semana é maior que o que vimos até agora: vamos desenvolver um programa completo!

WEEK 7
Repetições Encaixadas
Existem situações em que precisamos trabalhar com repetições de repetições. Vamos ver como isso funciona?

WEEK 8
Listas
Quando precisamos trabalhar com um conjunto de dados, utilizamos listas para implementar isso em Python. Nessa semana veremos como as listas funcionam, o comando "for", e muito mais. Mãos à obra ;-)

WEEK 9
Mais sobre listas
Nossa introdução termina com uma breve discussão sobre como os objetos são armazenados na memória do computador e mais um programa completo.

Go to Class
MOOC List is learner-supported. When you buy through links on our site, we may earn an affiliate commission.

Related Courses

Agile Planning for Software Products (Coursera) Coursera
University of Alberta

Agile Planning for Software Products (Coursera)

This course covers the techniques required to break down and map requirements into plans that will ultimately drive software production. Upon successful completion of this course, you will be able to: create effective plans for software development; map user requirements to developer tasks; assess and plan for project risks; apply velocity-driven planning techniques; generate work estimates for software products.

Sep 28th 2026
4 Weeks
International Cyber Conflicts (Coursera) Coursera
The State University of New York

International Cyber Conflicts (Coursera)

By nature, cyber conflicts are an international issue that span across nation-state borders. By the end of the course, you will be able to apply the knowledge gained for analysis and management of international cyber incidents and conflicts including for activities such as development of policy related to cybercrime and cyberwarfare. Management of cyber incidents and conflicts requires an interdisciplinary perspective including an understanding of: 1) characteristics of the cyber threats and conflicts themselves, 2) international efforts to reduce and improve cyber security, and 3) psychological and sociopolitical factors.

Sep 28th 2026
5-12 Weeks
Practical Python for AI Coding 1 (Coursera) Coursera
Korea Advanced Institute of Science and Technology - KAIST

Practical Python for AI Coding 1 (Coursera)

This course is for a complete novice of Python coding, so no prior knowledge or experience in software coding is required. This course selects, introduces and explains Python syntaxes, functions and libraries that were frequently used in AI coding. In addition, this course introduces vital syntaxes, and functions often used in AI coding and explains the complementary relationship among NumPy, Pandas and TensorFlow, so this course is helpful for even seasoned python users.

Sep 28th 2026
5-12 Weeks
Blockchain Scalability and its Foundations in Distributed Systems (Coursera) Coursera
The University of Sydney

Blockchain Scalability and its Foundations in Distributed Systems (Coursera)

Blockchain promises to disrupt industries once it will be efficient at large scale. In this course, you will learn how to make blockchain scale. You will learn about the foundational problem of distributed computing, consensus, that is key to create blocks securely. By illustrating limitations of mainstream blockchains, this course will indicate how to improve the technology in terms of security and efficiency. In particular, this course will help you: understand security vulnerabilities of mainstream blockchains; design consensus algorithms that tolerate attacks, and; design scalable blockchain systems.

Sep 28th 2026
5-12 Weeks
操作系统原理 (Operating Systems) (Coursera) Coursera
Peking University

操作系统原理 (Operating Systems) (Coursera)

操作系统原理》是针对计算机科学技术专业三年级本科生开设的一门专业基础课程。本课程着重学生系统观的培养,通过重点讲述操作系统的内部结构、工作原理及典型技术的实现,使学生建立起对操作系统的整体及各个功能模块的认识,从而系统掌握计算机的专业知识,进一步提升学生的软件开发能力乃至系统软件开发能力。

Sep 28th 2026
13-24 Weeks
Introduction and Programming with IoT Boards (Coursera) Coursera
Pohang University of Science and Technology - POSTECH

Introduction and Programming with IoT Boards (Coursera)

Internet of Things (IoT) is an emerging area of information and communications technology (ICT) involving many disciplines of computer science and engineering including sensors/actuators, communications networking, server platforms, data analytics and smart applications. IoT is considered to be an essential part of the 4th Industrial Revolution along with AI and Big Data. This course will be very useful to senior undergraduate and graduate students as well as engineers who are working in the industry.

Sep 28th 2026
5-12 Weeks
Open Source Programming - Master's (Coursera) Coursera
Illinois Tech

Open Source Programming - Master's (Coursera)

Contemporary open-source programming languages and frameworks are presented in this course. Students will consider design and development topics in system, graphical user interface, network, and web programming. Dynamic scripting languages are covered using object-oriented, concurrent, and functional programming paradigms. Concepts gained throughout the course are reinforced with numerous exercises which will culminate in an open-source programming project.

Sep 28th 2026
5-12 Weeks
Operations Research (1): Models and Applications (Coursera) Coursera
National Taiwan University

Operations Research (1): Models and Applications (Coursera)

Operations Research (OR) is a field in which people use mathematical and engineering methods to study optimization problems in Business and Management, Economics, Computer Science, Civil Engineering, Industrial Engineering, etc. This course introduces frameworks and ideas about various types of optimization problems in the business world. In particular, we focus on how to formulate real business problems into mathematical models that can be solved by computers.

Sep 28th 2026
5-12 Weeks
Introduction to Software Product Management (Coursera) Coursera
University of Alberta

Introduction to Software Product Management (Coursera)

This course highlights the importance and role of software product management. It also provides an overview of the specialization, as well as its goals, structure, and expectations. The course explains the value of process, requirements, planning, and monitoring in producing better software. Upon successful completion of this course, you will be able to: relate software product management to better software products; recognize the role of a software product manager; reflect on how Agile principles will improve your own projects.

Sep 28th 2026
2 Weeks
Open Source Programming - Bachelor's (Coursera) Coursera
Illinois Tech

Open Source Programming - Bachelor's (Coursera)

Contemporary open-source programming languages and frameworks are presented in this course. Students will consider design and development topics in system, graphical user interface, network, and web programming. Dynamic scripting languages are covered using object-oriented, concurrent, and functional programming paradigms. Concepts gained throughout the course are reinforced with numerous exercises which will culminate in an open-source programming project.

Sep 28th 2026
5-12 Weeks