1.从用户那里获取信息

name = "Alex"
print("hello" + name)

2.让python成为你的计算器

1 print(4+5)
2 print(3-2)
3 print(2*3)
4 print(1/3)
5 print(((2+3)/3+5)*5)
6 print(2**10)

3.python语法基本介绍

Python基本数据类型一般分为:数字、字符串、列表、元组、字典、集合这六种基本数据类型。浮点型、复数类型、布尔型(布尔型就是只有两个值的整型)、这几种数字类型。列表、元组、字符串都是序列。

print(7 + "8")
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
TypeError: unsupported operand type(s) for +: 'int' and 'str'
#查看数据类型
print(type("a"))
<class 'str'>
print(type(7))
<class 'int'>
print(type(4.5))
<class 'float'>

变量存储在内存中的值,这就意味着在创建变量时会在内存中开辟一个空间。基于变量的数据类型,解释器会分配指定内存,并决定什么数据可以被存储在内存中。因此,变量可以指定不同的数据类型,这些变量可以存储整数,小数或字符。

length = 10
width = 20
area = length * width
print(area)

表达式,数字和类型转换

print(7 + 8.5)
base = 3
height = 6
area = (base * height)/2
print("The area is :" + str(area))

4.定义功能

def greeting(name, department):
print("Welcome, " + name)
print("You are part of " + department) greeting("blake", "AI engineering")

5.返回值

def triangle_area(base, height):
return base * heigth / 2 area_a = triangle_area(3, 2)
area_b = triangle_area(4, 5)
sum = area_a + area_b
print("The sum of areas is : " + str(sum))

6.while循环

def attempt(n):
x=0
while(x<n):
print("Attempt" + str(x))
x += 1
print("Done") attempt(5)
#用户登录输错用户名举例
username = get_username()
while not vaild_username(username):
print("It's not vaild name,please try again")
username = get_username()

7.无限循环以及如何打破它们

#无限循环
while x%2 ==0:
x = x / 2
#方法
while x!=0 and x%2 ==0:
x = x / 2

8.一些循环示例

#1-10的乘积
product = 1
for n in range(1,10):
product = product * n print(product)
#特定间隔温度转换
def to_celsius(x):
return (x -32)*5/9 for x in range(0,101,10):
print(x,to_celsius(x))

9.嵌套循环

#乘法表
for x in range(1,10):
for y in range(x,10):
print(str(x)+ "*" +str(y)+ "=" +str(x*y),end=" ")
print()
#比赛行程,两两对抗
teams = ["Dragons", "Wolves", "Dog", "Pandas", "Unicorns"]
for home_team in teams:
for away_team in teams:
if home_team != away_team:
print(home_team + " VS " +away_team)

10.递归

def factorial(n):
if n<2:
return 1
return n * factorial(n-1)

11.创建新字符串

#更换域名
def replace(email, old_domain, new_domain):
if "@" + old_domain in email:
index = email.index("@" + old_domain)
new_email = email[:index] + "@" + new_domain
return new_email
return email

12.格式化字符串

name = "Nancy"
luck_number = len(name) * 3
print("Hello {},your lucky number is {}".format(name, luck_number))
#print("your lucky number is {luck_number},{name}".format(name = name, luck_number = len(name) *3))
#保留两位小数
price = 7.5
with_tax = price * 1.09
print("Basic price is ${:.2f},with_tax is ${:.2f}".format(price, with_tax))

13.列表

#增加列表元素
fruits = ["pineapple", "banana", "apple", "melon"]
#末尾加入
fruits.append("kiwi")
print(fruits)
#第一个位置加入
fruits.insert(0, "orange")
print(fruits)
#------------------------
#删除元素
fruits.remove("melon")
print(fruits)
#取出特定位置元素
fruits.pop(3)
#更改特定位置元素
fruits[2] = "Strawberry"
print(fruits)

14.元组

元组元素不可更改

#时间转换器
def convert_seconds(seconds):
hours = seconds // 3600
minutes = (seconds - hours * 3600) // 60
remaining_seconds = seconds - hours * 3600 - minutes * 60
return hours, minutes, remaining_seconds convert_seconds(5000) #检查元素类型
print(type(convert_seconds(5000))

15.遍历列表和元组

animals = ["lion", "zebra", "dolphin", "monkey"]
chars = 0
for animal in animals:
chars += len(animal) print("total characters:{},the average length:{}".format(chars, chars/len(animals)))
winners = ["Ashep", "Bob", "Nancy"]
for index, person in enumerate(winners):
print("{} - {}".format(index+1, person))
#分离人名和邮箱地址
def full_emails(people):
result = []
for email, name in people:
result.append("{} <{}>".format(name,email))
return result print(full_emails([("Alex@qq.com", "Alex"),("Nancy@163.com", "Nancy")]))

16.列表综合

#列表推导
multiplus = []
for x in range(1,11):
multiplus.append(x*7) print(multiplus)
#一行实现
multiplus = [x * 7 for x in range(1,11)]
print(multiplus)
#计算列表元素的长度
languages = ["python", "perl", "java", "c++", "ruby"]
lengths = [len(language) for language in languages]
print(lengths) #挑选符合特定条件的元素
z = [ x for x in range(1, 100) if x % 3 ==0]
print(z)

17.字典

file_counts = {"txt":10, "png":19, "csv":23,"html":45}
#查找字典元素值
print(file_counts["txt"])
#增加元素
file_counts["gif"] = 17
print(file_counts)
#更改元素值
file_counts["png"] = 48
print(file_counts)
#迭代字典
file_counts = {"py":13, "txt":24, "gif":32}
for extension in file_counts:
print(extension) #友好式显示
for ext, amount in file_counts.items():
print("There have {} files with .{} extension".format(amount, ext)) #查看字典里所有的键
file_counts.keys()
#查看字典里所有的键值
file_counts.values()
#输出所有键值
for value in file_counts.values():
print(value)
#统计文本每个字母个数
def count_letters(txt):
result = {}
for letter in txt:
if letter not in result:
result[letter] = 0
result[letter] +=1
return result count_letters("we are very good")

18.面向对象编程

#内置函数
dir(" ")
#帮助
help(" ")
#定义类苹果
class Apple:
color = " "
flavor = " " #实例化
jonagold = Apple()
jonagold.color = "red"
jonagold.flavor = "sweet"
print(jonagold.color)
print(jonagold.flavor)
print(jonagold.color.upper())
#简单示例
class Piglet:
def speak(self):
print("oink oink") hamlet = Piglet()
hamlet.speak()
#复杂示例
class Piglet:
name = "piglet"
def speak(self):
print("Oink!I'm {},oink oink.".format(self.name)) hamlet = Piglet()
hamlet.name = "Hamlet"
hamlet.speak()
#构造函数和其他特殊方法
class Apple:
def __init__(self, color, flavor):
self.color = color
self.flavor = flavor jonagold = Apple("red", "sweet")
print(jonagold.color)

19.关于jupyter笔记本

详情参照:https://www.jianshu.com/p/91365f343585

20.继承

#定义类动物
class Animal:
sound = " "
def __init__(self, name):
self.name = name
def speak(self):
print("{sound},I'm {name}!{sound} {sound}.".format(name = self.name,sound = self.sound)) #定义类pig,继承animal
class Piglet(Animal):
sound = "Onik" #实例化类pig
hamlet = Piglet("Hamlet")
hamlet.speak()

21.撰写

22.词云

https://blog.csdn.net/zzc_zhuyu/article/details/90814902

谷歌:python速成课程笔记的更多相关文章

  1. 机器学习入门 - Google机器学习速成课程 - 笔记汇总

    机器学习入门 - Google机器学习速成课程 https://www.cnblogs.com/anliven/p/6107783.html MLCC简介 前提条件和准备工作 完成课程的下一步 机器学 ...

  2. python数据处理课程笔记(一)

    一.numpy 1.numpy中所有元素必须是相同的类型 a=[1,2,3,4,'t'] #列表中有str类型,转换为ndarray时所有元素都转换为str类型 arr1=np.array(a) pr ...

  3. 谷歌机器学习速成课程---降低损失 (Reducing Loss):随机梯度下降法

    在梯度下降法中,批量指的是用于在单次迭代中计算梯度的样本总数.到目前为止,我们一直假定批量是指整个数据集.就 Google 的规模而言,数据集通常包含数十亿甚至数千亿个样本.此外,Google 数据集 ...

  4. 谷歌机器学习速成课程---3降低损失 (Reducing Loss):学习速率

    正如之前所述,梯度矢量具有方向和大小.梯度下降法算法用梯度乘以一个称为学习速率(有时也称为步长)的标量,以确定下一个点的位置.例如,如果梯度大小为 2.5,学习速率为 0.01,则梯度下降法算法会选择 ...

  5. 谷歌机器学习速成课程---3降低损失 (Reducing Loss):梯度下降法

    迭代方法图(图 1)包含一个标题为“计算参数更新”的华而不实的绿框.现在,我们将用更实质的方法代替这种华而不实的算法. 假设我们有时间和计算资源来计算 w1 的所有可能值的损失.对于我们一直在研究的回 ...

  6. 谷歌机器学习速成课程---2深入了解机器学习(Descending into ML)

    1.线性回归 人们早就知晓,相比凉爽的天气,蟋蟀在较为炎热的天气里鸣叫更为频繁.数十年来,专业和业余昆虫学者已将每分钟的鸣叫声和温度方面的数据编入目录.Ruth 阿姨将她喜爱的蟋蟀数据库作为生日礼物送 ...

  7. CS231n课程笔记翻译1:Python Numpy教程

    译者注:本文智能单元首发,翻译自斯坦福CS231n课程笔记Python Numpy Tutorial,由课程教师Andrej Karpathy授权进行翻译.本篇教程由杜客翻译完成,Flood Sung ...

  8. Andrew 机器学习课程笔记

    Andrew 机器学习课程笔记 完成 Andrew 的课程结束至今已有一段时间,课程介绍深入浅出,很好的解释了模型的基本原理以及应用.在我看来这是个很好的入门视频,他老人家现在又出了一门 deep l ...

  9. Python网络爬虫笔记(五):下载、分析京东P20销售数据

    (一)  分析网页 下载下面这个链接的销售数据 https://item.jd.com/6733026.html#comment 1.      翻页的时候,谷歌F12的Network页签可以看到下面 ...

随机推荐

  1. Maven执行Install命令时跳过测试

    1. 在pom.xml中添加插件 <!-- 跳过单元测试,不然打包的时候会因为加载不了application.yaml报错 --> <plugin> <groupId&g ...

  2. Spring核心结构及核心思想

    Spring核心结构 基本概念 Spring是⼀个分层⾮常清晰并且依赖关系.职责定位⾮常明确的轻量级框架,主要包括⼏个⼤模块:数据处理模块.Web模块.AOP(Aspect Oriented Prog ...

  3. 2020.12.20vj补题

    A - Insomnia cure 题意:一共s只龙,每隔k,l,m,n只龙就会受伤,问这s只龙有多少龙是受伤的 思路:看起来题目范围并不是很多,直接进行循环判断 代码: 1 #include< ...

  4. (转)elasticsearch6.0版本安装head插件

    1.1 前言 不知道是我电脑问题还是最近的开源软件都比较**,mysql和elasticsearch新版本变动都比较大. elasticsearch6.0貌似已经不支持命令行安装head插件了,反正我 ...

  5. Pytorch_Part4_损失函数

    VisualPytorch beta发布了! 功能概述:通过可视化拖拽网络层方式搭建模型,可选择不同数据集.损失函数.优化器生成可运行pytorch代码 扩展功能:1. 模型搭建支持模块的嵌套:2. ...

  6. Node.js-Events 模块总结与源码解析

    Events 描述 大多数 Node.js API 采用异步事件驱动架构,这些对象都是EventEmitter类的实例(Emitter),通过触发命名事件(eventName or type)来调用函 ...

  7. jquery的入口函数 和 js和jq的转化

    先引入jq包 然后<script type="text/javascript"> $(function{ 获取标签:$('#box2') jq转为js:$('#box2 ...

  8. oracle 碎片管理和数据文件resize释放表空间和磁盘空间(以及sys.wri$_optstat_histgrm_history过大处理)

    随着互联网的快速发展,各行各业的数据量也是与日俱增,而数据库的数据量也是直线增长,但是,如果表DML太多,则可能会在高水位线以下出现太多空白. 因此,只能将数据文件缩小到高水位线,因为高水位线以下有一 ...

  9. 【转载】CentOS下查看电脑硬件设备属性命令

    CentOS下查看电脑硬件设备属性命令2018年09月13日 17:48:31 乔烨 阅读数 510如何在linux下查看电脑硬件设备属性 # uname -a # 查看内核/操作系统/CPU信息 # ...

  10. 【BIGDATA】Grafana告警之webhook的坑

    近日搭建一套基于ELK&Grafana的监控告警平台,目的是将生产端某性能日志导入ES中,通过Grafana进行可视化监测,同时设置告警. 告警内容推送到自建的webhook服务后,转发到指定 ...