kaggle入门——Python篇(一)--hello,Python

近来考研非常烦,在暑假实训的过程中做数学题目非常吃力,突然想起来去kaggle注册一个账号,看到kaggle的入门学习资料,于是就打算翻译一下!也算是当做考研英语的复习吧!好了不说废话,开始我的翻译!

原链接:https://www.kaggle.com/colinmorris/hello-python/notebook

欢迎来到kaggle学习区的Python课程,本课程将介绍在开始使用Python进行数据科学之前您需要的基本Python技能。这些课程针对一些有过编程经验的人,那些学习Python来点亮他们的技能树或者提高他们的Python水平。(如果你是第一次编程,你可能会觉得这个课程的节奏有点太快了。你可能需要看看“适合非程序员的Python”的学习资源:)

(不认识的词汇:repertoire:全部节目; 全部本领; (计算机的) 指令表(我引申为技能树)             

 check out 检查; 合格; [口] 看看; 相等; 

overview 概观; 总的看法; 回顾,复习;

syntax   语法; 句法; 句法规则[分析]; 语构;

assignment  分给,分配; 任务,工作,(课外)作业; <美>任命; 指定,委派;variable assignment 变量赋值

arithmetic 算法; 算术,计算 

in a more thorough, theoretical grounding 更全面的理论基础

homage 敬意; 效忠; 顺从

skit  讽刺文; 小喜剧; <口>若干; 一群;

If you have no idea, that's fine!   如果你不知道,那没关系!【翻译为那太好了,就不符合意思了!】

spam  垃圾邮件; 香火腿; (斯帕姆) 午餐肉; (非索要的) 电邮广告;向…发送垃圾函件;

unpack  从(包裹等)中取出(所装的东西),打开行李取出;拆包; 解除…的负担; 吐露(心事等); 卸下(车、马等)的负荷物;

semantics   语义学; 词义学;

Aside 旁白,注释

refer to 参考; 指的是; 涉及; 适用于(引用类型)

a sort of = a kind of  有点   a different sort of (一些)不同类型

builtin Builtin是built in的意思,表示内建帐户。也即表示Windows的Administrator用户组(内置函数)

parenthesis 圆括号,插入语,插曲

comment 注释,评论,意见,说明

evaluate 评价( evaluate的第三人称单数 ); 求…的值(或数); 对…评价; [数学、逻辑学] 求…的数值;

prized 被看作最重要的,被看作最有价值的;珍视,珍惜( prize的过去式和过去分词 );

pseudocode 伪代码

colon 冒号; <解>结肠; 科郎(哥斯达黎加货币单位);

subsequent 随后的; 后来的; 作为结果而发生的; 附随的

indented 锯齿状的; (印刷,原稿等) 缩进排印的; 受契约约束的;

curly braces  大括号; 花括号; 大括弧; 花括號;

consistent 一致的; 连续的; 不矛盾的; 坚持的

snippet 小片,片段; 不知天高地厚的年轻人

quotation 引用,引证; [商业] 行情,行市; 行市表,估价单; 引用语;(引号)

but amusingly enough  但是(而且)有趣的是

cheeky 无礼的,不要脸的,厚颜无耻的;

term  术语; 期限; 学期; 条款;把…称为; 把…叫做;

commonly 通常地; 一般地; 平凡地; 粗俗地;

encounter  遭遇; 不期而遇; 对抗;

decimal   十进位的,小数的;小数;

perform 执行; 履行; 表演; 扮演;

 whereas 然而; 鉴于; 反之

mnemonic 记忆的,记忆术的

exponents 指数,倡导者( exponent的名词复数 ); 说明者; 能手

intuitive 直观的; 直觉的; 凭直觉获知的;

trump card 王牌

respectively 各自地,分别地

in addition to 除此之外

corresponding 相当的,对应的; 通信的; 符合的,符合, 一致的;

第一节课包含一些Python的语法,变量赋值以及算术运算符的简要概括。如果你已经有Python的编程经验,你可能需要跳过这一课直接进入下一课。


这个课程借鉴和改编了来自A Whirlwind Tour of Python的部分内容。感谢作者Jake VanderPlas的发布许可授权。如果你对Python更全面的理论基础感兴趣,我强烈建议你去看看WTOP(上面的那个链接!)


hello,Python

Python 是以英国喜剧团体Monty Python命名的,那么为什么不让我们的第一个Python程序向他们最著名的喜剧Spam致敬呢?

仅仅为了好玩,尝试阅读一下下面的代码,并且预测一下当他运行的时候会发生什么。(如果你不知道,那也没有关系!)

In【】

spam_amount = 0
print(spam_amount)

## Ordering Spam, egg, Spam, Spam, bacon and Spam
# (4 more servings of Spam)
spam_amount = spam_amount + 4

if spam_amount > 0:
    print("But I don't want ANY spam!")

viking_song = "Spam " * spam_amount
print(viking_song)

out【】

这里打开了很多东西!这个简单的程序阐述了很多重要的方面,比如Python像什么(它的语法),以及它是怎么运行的(它的语义)。让我们从上到下运行这个代码吧!

spam_amount = 0

变量赋值!这里我们创建了一个spam_amount的变量,并且使用“=”Python的赋值运算符为其赋值0。


注:如果你有其他语言得编程经验(比如 Java或者C++),您可能会注意到Python不需要我们在这里做的一些事情:

  • 在赋值之前,我们不需要去“声明”spam_amount 。
  • 我们不需要告诉Python spam_amount将引用什么类型的值。实际上,我们甚至可以继续重新分配spam_amount来引用不同类型的东西,比如字符串或布尔值。

 

print(spam_amount)

函数调用。“print”是一个非常好用的Python的内置函数,它将传递给它的值显示在屏幕上。 我们通过在其后面加上括号来调用函数,并在其括号间输入函数(或参数)。

 

## Ordering Spam, egg, Spam, Spam, bacon and Spam
# (4 more servings of Spam)
spam_amount = spam_amount + 4

上面的第一行是注释。 在Python中,注释以#符号开头。

接下来我们看一个重新分配的例子。 重新分配现有变量的值与创建变量的方式相同 - 它仍然使用“=”赋值运算符。

在这个例子中,分配给spam_amount的值包含对其先前值的一些简单运算。 当遇到这一行时,Python会在=(0 + 4 = 4)的右侧进行表达式的计算,然后将该计算后的值赋给左侧的变量。

 

if spam_amount > 0:
    print("But I don't want ANY spam!")

我们不会在以后谈论条件,但是,即使你以前从来没有敲过代码,你也可以猜到这是用来干嘛的。 Python因其代码的可读性和语法的简洁性而备受推崇(有些人甚至将其称为“可执行伪代码”)。

注:我们如何指出哪行代码属于if。 “But I don't want ANY spam!”仅当spam_amount为正数时才被输出。但是无论spam_amount是否为正数,都应该执行后面的代码(比如print(viking_song))。那么我们(或者Python)如何知道这一点呢?

if行末尾的冒号(:)表示新的“代码块”即将出现。缩进的后续行(以额外的4个空格开头)是该代码块的一部分。你可能熟悉使用其他语言,利用“{花括号}”来标记代码块的开头和结尾。Python对有意义的空白的使用通常对习惯于其他语言的程序员来说是令人惊讶的,但实际上,比起那些不强制执行代码块缩进的语言,它可以使得代码更具一致性和可读性。

最后一行处理“viking_song”是没有额外进行缩进4个空格的,因此他们不是if”的代码块的一部分。我们在之后开始定义函数和使用循环时,将会见到更多缩进代码块的示例。

这段代码也是我们在Python中第一次见到字符串:

"But I don't want ANY spam!"

字符串可以使用双引号或者单引号进行标记。(但是因为这个特殊的字符串包含一个单引号字符,除非我们非常小心,否则不要尝试使用单引号括起来,会使得Python无法分辨执行!)

 

viking_song = "Spam " * spam_amount
print(viking_song)

“*”运算符可以用来将两个数字相乘(3*3=9),而且有趣的是,我们还可以通过数字和字符串相乘得到多次重复的字符创文本。Python提供许多像这样的节省时间的技巧,其中像“*”和“+”在不同的应用场景下有不同的含义。(技术的术语把这个称为“运算符重载”)


Python中的数值运算

我们已经看到了一个包含上述数字的变量的示例:

spam_amount = 0

“数字”是一个很好的非正式名称,但如果我们想要更具技术性,我们可以请求Python如何描述spam_amount的类型:

print(type(spam_amount))

int 短整数型(一种数据类型),我们在Python中经常会看见这种类型的数字。

float是一个带小数的数据类型,在表示权重和比例时非常有用。

type()是我们见到的第二个内置方法(继print()之后),同时也值得我们记下来,在询问Python“这到底是啥?”的时候非常有用。

要想处理数字自然就得进行运算的操作,我们可以发现“+”可以求和,“*”可以用来求积(排序)。Python也为我们提供了计算器上剩余的基本按钮,如下表所示:

这里有件非常有趣的事情,你的计算器可以能只有一个按钮用于“除法”,但是Python却有两种,其中“true division”基本上和你的计算器的操作一样:

可以看见,它总是返回给我们的是一个浮点型的数。

而“//”的操作是给我们返回一个向下取整的结果。

你想知道这些东西会应用到哪些地方吗?你将在之后的编程中会遇到相关的问题,并应用这些去解决它们。

运算符的优先级

我们在小学学习算术时就知道,在进行运算时都有一定的顺序规定。一些人通过诸如PEMDAS的助记符来记下这些顺讯——括弧,指数,先加减后乘除。

关于首先执行那种运算,Python也遵循的同样的法则,它们大部分都是非常直观的。

但是,有时候我们不想要这种默认的顺序:

括号是你的王牌,你可以使用它让Python以不同的顺序强制进行子表达式的运算(或者仅仅让你的代码更具有可读性!)

用于数字处理的内置函数

min和max分别用来返回其参数的最大值和最小值.......

abs用来返回参数的绝对值:

除了作为Python的两个主要数据类型的名称外,int和float也可以被称为将其参数转换为相应参数类型的函数:

好了,断断续续地翻译完了,花了四天,感觉自己的英语还是有点垃圾,哈哈!加油吧!

  • 6
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值