零基础使用Swift学习数据科学
Swift提供了两个有用的选项来创建变量:let和var. let用来创建一个"常量",这个常量的值在程序的任何地方都不能改变。var与我们在Python中看到的变量非常相似——你可以在程序的任何时候更改存储在其中的值。 让我们看一个例子来看看区别。创建两个变量a和b: 现在,尝试改变a和b的值:
![]() 这种创建常量与变量的能力非常有用,可以帮助我们防止代码中出现看不见的bug。你将在本文中进一步看到,我们将使用let来创建存储重要信息并且不需要变更值的常量, 这里有一个技巧:使用var来创建你想使用一些中间计算的结果,因为这些中间计算结果需要改变。类似地,使用let来存储训练数据或者结果,这些数据基本上就是你不想更改或弄乱的值。 此外,Swift还有一个很酷的功能,你甚至可以使用表情符号作为变量名! ![]() 这是因为Swift非常支持Unicode,所以我们可以用希腊字母来创建变量: 2.5 Swift的数据类型 Swift支持所有常见的数据类型,如整数、字符串、浮点数和双精度。我们可以赋值给任何变量,其类型会被Swift自动检测到: 你还可以在创建变量时显式地编写数据类型。这有助于防止程序中的错误,因为如果类型不匹配。Swift将抛出一个错误:
有一种简单的方法可以将变量的值包含在字符串中,方法是将变量放在括号中,并在括号前写入反斜杠()。例如: ![]() 可以对占用多行的字符串使用三个双引号(""")。 2.6 列表和字典 Swift支持列表和字典数据结构,就像Python一样(这又是一个比较!)这里与Python不同,我们不需要像字典的"{}"和列表的"[]"这样的单独语法。 让我们用Swift创建一个列表和字典:
上面的代码将把"Jayne"和"Public Relations"的键值对添加到字典中。如果你打印以上的字典以下就是输出: ![]() 2.7 使用循环 循环是任何编程语言最重要的特性之一,Swift不会让你失望。它不仅支持所有传统的循环机制(for、while等),而且还实现了它自己的一些变体。 for..in 循环 非常类似于Python,你可以使用在Swift中的list或者range使用for循环: ![]() 第一个例子中的三个点表示Swift中的"range"。如果我们想做a到b范围内的事情,我们会使用a…b的语法。 类似地,如果我们想不要最后一个数字,我们可以把这三个点改成"..<"像"a.."。 这里需要注意的另一点是,与Python不同,Swift不使用缩进的概念,而是使用花括号"{}"来表示代码层次结构。 你可以在Swift中以类似的方式使用while和其他类型的循环。你可以这里了解更多关于循环的信息:https://docs.swift.org/swift-book/LanguageGuide/ControlFlow.html。 2.8 条件(if-else) Swift支持条件语句,如if, if..else, if..else..if, 嵌套if甚至switch语句(Python不支持)。if语句的语法非常简单:
2.9 函数 Swift函数在语法上与Python中的函数非常相似。这里的主要区别是我们使用了func关键字而不是def,并且我们明确地提到了参数的数据类型和函数的返回类型。 一个基本的函数如下: ![]() 和条件语句一样,我们使用花括号"{}"来表示属于这个函数的代码块。 2.10 用代码编写注释 编写注释是优秀代码最重要的方面之一。这适用于任何行业。这是你应该学习的最重要的编程技巧! 在你的代码里包含注释文本,作为对自己的注释或提醒。注释在编译时会被Swift忽略。 单行注释以两个斜杠(//)开头:
3.在Swift中使用Python库 Swift支持与Python的互操作性。这意味着你可以从Swift导入有用的Python库,调用它们的函数,并在Swift和Python之间无缝地切换。 这给了Swift的数据科学生态系统不可思议的力量。这个生态系统还很年轻,还在发展中,你已经可以使用成熟的库,如Numpy、panda和Python的Matplotlib来填补现有Swift产品的空白。 为了在Swift中使用Python的模块,你可以直接导入Python并加载任何你想要使用的库! (编辑:通化站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |