|
| 1 | +<div align="center"> |
| 2 | + <h1> 30 天 Python:第二天 - 变量, 内置函数</h1> |
| 3 | + <a class="header-badge" target="_blank" href="https://www.linkedin.com/in/asabeneh/"> |
| 4 | + <img src="https://img.shields.io/badge/style--5eba00.svg?label=LinkedIn&logo=linkedin&style=social"> |
| 5 | + </a> |
| 6 | + <a class="header-badge" target="_blank" href="https://twitter.com/Asabeneh"> |
| 7 | + <img alt="Twitter Follow" src="https://img.shields.io/twitter/follow/asabeneh?style=social"> |
| 8 | + </a> |
| 9 | + |
| 10 | +<sub>作者: |
| 11 | +<a href="https://www.linkedin.com/in/asabeneh/" target="_blank">Asabeneh Yetayeh</a><br> |
| 12 | +<small> 第二版:2021 年 7 月</small> |
| 13 | +</sub> |
| 14 | + |
| 15 | +</div> |
| 16 | + |
| 17 | +[<< 第一天](./readme.md) | [第三天 >>](./03_operators.md) |
| 18 | + |
| 19 | + |
| 20 | + |
| 21 | +_阅读大约需要:12m_ |
| 22 | + |
| 23 | +- [📘 第二天](#-第二天) |
| 24 | + - [内置函数](#内置函数) |
| 25 | + - [变量](#变量) |
| 26 | + - [在一行中声明多个变量](#在一行中声明多个变量) |
| 27 | + - [数据类型](#数据类型) |
| 28 | + - [数据类型转换](#数据类型转换) |
| 29 | + - [Numbers](#numbers) |
| 30 | + - [💻 练习 - 第二天](#-练习---第二天) |
| 31 | + - [练习: 1级](#练习-1级) |
| 32 | + - [练习: 2级](#练习-2级) |
| 33 | + |
| 34 | +# 📘 第二天 |
| 35 | + |
| 36 | +## 内置函数 |
| 37 | + |
| 38 | +Python 提供了很多内置函数。内置函数是全局可用的,这意味着您可以在不导入或配置的情况下使用内置函数。以下是几种最常用的 Python 内置函数:_print()_, _len()_, _type()_, _int()_, _float()_, _str()_, _input()_, _list()_, _dict()_, _min()_, _max()_, _sum()_, _sorted()_, _open()_, _file()_, _help()_, _dir()_。在下表中,您将看到从 [Python 文档](https://docs.python.org/3.9/library/functions.html)中获取的详尽的 Python 内置函数列表。 |
| 39 | + |
| 40 | + |
| 41 | + |
| 42 | +让我们打开 Python shell 并开始使用一些最常见的内置函数。 |
| 43 | + |
| 44 | + |
| 45 | + |
| 46 | +使用不同的内置函数进行更多练习 |
| 47 | + |
| 48 | + |
| 49 | + |
| 50 | +如上所示,Python 有保留字。我们不能使用保留字来声明变量或函数。我们将在下一节中介绍变量。 |
| 51 | + |
| 52 | +我相信,现在您已经熟悉了内置函数。让我们再练习一下内置函数,然后我们继续下一节。 |
| 53 | + |
| 54 | + |
| 55 | + |
| 56 | +## 变量 |
| 57 | + |
| 58 | +变量将数据存储在计算机内存中。在许多编程语言中,建议使用助记符变量。助记符变量是一个易于记忆和关联的变量名。变量指的是存储数据的内存地址。 |
| 59 | + |
| 60 | +命名变量时,不允许以数字开头、使用特殊字符和连字符。变量可以有一个简短的名称(如 x、y、z),但强烈建议使用更具描述性的名称(名字、姓氏、年龄、国家/地区)。 |
| 61 | + |
| 62 | +Python 变量名规则 |
| 63 | + |
| 64 | +- 变量名必须以字母或下划线字符开头 |
| 65 | +- 变量名不能以数字开头 |
| 66 | +- 变量名只能包含字母数字字符和下划线(A-z、0-9 和 \_ ) |
| 67 | +- 变量名区分大小写(firstname、Firstname、FirstName 和 FIRSTNAME 是不同的变量) |
| 68 | + |
| 69 | +以下是一些有效变量名的示例: |
| 70 | + |
| 71 | +```shell |
| 72 | +firstname |
| 73 | +lastname |
| 74 | +age |
| 75 | +country |
| 76 | +city |
| 77 | +first_name |
| 78 | +last_name |
| 79 | +capital_city |
| 80 | +_if # 如果我们想使用保留字作为变量 |
| 81 | +year_2021 |
| 82 | +year2021 |
| 83 | +current_year_2021 |
| 84 | +birth_year |
| 85 | +num1 |
| 86 | +num2 |
| 87 | +``` |
| 88 | + |
| 89 | +无效的变量名 |
| 90 | + |
| 91 | +```shell |
| 92 | +first-name |
| 93 | +first@name |
| 94 | +first$name |
| 95 | +num-1 |
| 96 | +1num |
| 97 | +``` |
| 98 | +我们将使用许多 Python 开发人员采用的标准 Python 变量命名样式。Python 开发人员使用蛇形命名法 (snake_case) 变量命名约定。对于包含多个单词的变量,我们在每个单词后使用下划线(例如 first_name、last_name、engine_rotation_speed)。下面的示例是变量的标准命名示例,当变量名称超过一个单词时,需要使用下划线。 |
| 99 | + |
| 100 | +当我们将某种数据类型分配给变量时,这称为变量声明。例如,在下面的例子中,我的名字被分配给变量 first_name。等号是赋值运算符。赋值意味着将数据存储在变量中。Python 中的等号与数学中的等号不同。 |
| 101 | + |
| 102 | +_示例:_ |
| 103 | + |
| 104 | +```py |
| 105 | +# Python 中的变量 |
| 106 | +first_name = 'Asabeneh' |
| 107 | +last_name = 'Yetayeh' |
| 108 | +country = 'Finland' |
| 109 | +city = 'Helsinki' |
| 110 | +age = 250 |
| 111 | +is_married = True |
| 112 | +skills = ['HTML', 'CSS', 'JS', 'React', 'Python'] |
| 113 | +person_info = { |
| 114 | + 'firstname':'Asabeneh', |
| 115 | + 'lastname':'Yetayeh', |
| 116 | + 'country':'Finland', |
| 117 | + 'city':'Helsinki' |
| 118 | + } |
| 119 | +``` |
| 120 | + |
| 121 | +让我们使用 _print()_ 和 _len()_ 内置函数。打印函数可以接受无限数量的参数。参数是一个值,我们可以将其传递或放在函数括号内,请参见下面的示例。 |
| 122 | + |
| 123 | +**示例:** |
| 124 | + |
| 125 | +```py |
| 126 | +print('Hello, World!') # The text Hello, World! is an argument |
| 127 | +print('Hello',',', 'World','!') # it can take multiple arguments, four arguments have been passed |
| 128 | +print(len('Hello, World!')) # it takes only one argument |
| 129 | +``` |
| 130 | + |
| 131 | +让我们打印并算出在上面声明的变量的长度: |
| 132 | + |
| 133 | + |
| 134 | +**示例:** |
| 135 | + |
| 136 | +```py |
| 137 | +# 打印变量的值 |
| 138 | + |
| 139 | +print('First name:', first_name) |
| 140 | +print('First name length:', len(first_name)) |
| 141 | +print('Last name: ', last_name) |
| 142 | +print('Last name length: ', len(last_name)) |
| 143 | +print('Country: ', country) |
| 144 | +print('City: ', city) |
| 145 | +print('Age: ', age) |
| 146 | +print('Married: ', is_married) |
| 147 | +print('Skills: ', skills) |
| 148 | +print('Person information: ', person_info) |
| 149 | +``` |
| 150 | + |
| 151 | +### 在一行中声明多个变量 |
| 152 | + |
| 153 | +多个变量也可以在同一行中声明: |
| 154 | + |
| 155 | +**示例:** |
| 156 | + |
| 157 | +```py |
| 158 | +first_name, last_name, country, age, is_married = 'Asabeneh', 'Yetayeh', 'Helsink', 250, True |
| 159 | + |
| 160 | +print(first_name, last_name, country, age, is_married) |
| 161 | +print('First name:', first_name) |
| 162 | +print('Last name: ', last_name) |
| 163 | +print('Country: ', country) |
| 164 | +print('Age: ', age) |
| 165 | +print('Married: ', is_married) |
| 166 | +``` |
| 167 | + |
| 168 | +使用内置函数 _input()_ 获取用户输入。让我们从用户那里得到的数据并赋值给 first_name 和 age 变量。 |
| 169 | +. |
| 170 | +**示例:** |
| 171 | + |
| 172 | +```py |
| 173 | +first_name = input('What is your name: ') |
| 174 | +age = input('How old are you? ') |
| 175 | + |
| 176 | +print(first_name) |
| 177 | +print(age) |
| 178 | +``` |
| 179 | + |
| 180 | +## 数据类型 |
| 181 | + |
| 182 | +Python 中有多种数据类型。为了识别数据类型,我们使用 _type_ 内置函数。我想请您熟练掌握不同的数据类型。当涉及到编程时,一切都与数据类型有关。我在一开始就介绍了数据类型,现在又提到了,因为每个主题都与数据类型有关。我们将在数据类型各自的章节中做更详细的介绍。 |
| 183 | + |
| 184 | +## 数据类型转换 |
| 185 | + |
| 186 | +- 检查数据类型:为了检查某些数据/变量的数据类型,我们使用 _type_ 函数 |
| 187 | + |
| 188 | + **示例:** |
| 189 | + |
| 190 | +```py |
| 191 | +# python 中不同的数据类型 |
| 192 | +# 声明一些有各种数据类型的变量 |
| 193 | + |
| 194 | +first_name = 'Asabeneh' # str |
| 195 | +last_name = 'Yetayeh' # str |
| 196 | +country = 'Finland' # str |
| 197 | +city= 'Helsinki' # str |
| 198 | +age = 250 # int, 不用担心,这并不是我真实的年龄 :) |
| 199 | + |
| 200 | +# Printing out types |
| 201 | +print(type('Asabeneh')) # str |
| 202 | +print(type(first_name)) # str |
| 203 | +print(type(10)) # int |
| 204 | +print(type(3.14)) # float |
| 205 | +print(type(1 + 1j)) # complex |
| 206 | +print(type(True)) # bool |
| 207 | +print(type([1, 2, 3, 4])) # list |
| 208 | +print(type({'name':'Asabeneh','age':250, 'is_married':250})) # dict |
| 209 | +print(type((1,2))) # tuple |
| 210 | +print(type(zip([1,2],[3,4]))) # set |
| 211 | +``` |
| 212 | + |
| 213 | +- 数据类型转换:将一种数据类型转换为另一种数据类型。我们使用 _int()_、_float()_、_str()_、_list_、_set_ |
| 214 | +当我们进行算术运算时,字符串数字应首先转换为 int 或 float,否则将返回错误。如果我们将数字与字符串连接起来,则应首先将数字转换为字符串。我们将在字符串部分讨论连接。 |
| 215 | + |
| 216 | + |
| 217 | + **示例:** |
| 218 | + |
| 219 | +```py |
| 220 | +# 整型 到 浮点型 |
| 221 | +num_int = 10 |
| 222 | +print('num_int',num_int) # 10 |
| 223 | +num_float = float(num_int) |
| 224 | +print('num_float:', num_float) # 10.0 |
| 225 | + |
| 226 | +# 浮点型 到 整型 |
| 227 | +gravity = 9.81 |
| 228 | +print(int(gravity)) # 9 |
| 229 | + |
| 230 | +# 整型 到 字符串 |
| 231 | +num_int = 10 |
| 232 | +print(num_int) # 10 |
| 233 | +num_str = str(num_int) |
| 234 | +print(num_str) # '10' |
| 235 | + |
| 236 | +# 字符串 到 整型或浮点型 |
| 237 | +num_str = '10.6' |
| 238 | +print('num_int', int(num_str)) # 10 |
| 239 | +print('num_float', float(num_str)) # 10.6 |
| 240 | + |
| 241 | +# 字符串 到 列表 |
| 242 | +first_name = 'Asabeneh' |
| 243 | +print(first_name) # 'Asabeneh' |
| 244 | +first_name_to_list = list(first_name) |
| 245 | +print(first_name_to_list) # ['A', 's', 'a', 'b', 'e', 'n', 'e', 'h'] |
| 246 | +``` |
| 247 | + |
| 248 | +## Number |
| 249 | + |
| 250 | +Python 中不同的数字类型 |
| 251 | + |
| 252 | +- Integer:整型数字(负数, 0 以及 正数) |
| 253 | + 示例: |
| 254 | + ... -3, -2, -1, 0, 1, 2, 3 ... |
| 255 | +- Float:浮点数 |
| 256 | + 示例 |
| 257 | + ... -3.5, -2.25, -1.0, 0.0, 1.1, 2.2, 3.5 ... |
| 258 | +- Complex:复数 |
| 259 | + 示例 |
| 260 | + 1 + j, 2 + 4j, 1 - 1j |
| 261 | + |
| 262 | +🌕 你太棒了。你刚刚完成了第 2 天的挑战,在通往成功的路上又前进了一步。现在做一些练习来锻练你的大脑和肌肉。 |
| 263 | + |
| 264 | + |
| 265 | +## 💻 练习 - 第二天 |
| 266 | + |
| 267 | +### 练习: 1级 |
| 268 | + |
| 269 | +1. 在 30DaysOfPython 文件夹内创建一个 day_2 文件夹。在这个文件夹里创建一个 variables.py 文件 |
| 270 | +2. 输入注释 '第二天: 30 Days of python programming' |
| 271 | +3. 声明一个 first name 变量,并为它赋值 |
| 272 | +4. 声明一个 last name 变量,并为它赋值 |
| 273 | +5. 声明一个 full name 变量,并为它赋值 |
| 274 | +6. 声明一个 country 变量,并为它赋值 |
| 275 | +7. 声明一个 city 变量,并为它赋值 |
| 276 | +8. 声明一个 age 变量,并为它赋值 |
| 277 | +9. 声明一个 year 变量,并为它赋值 |
| 278 | +10. 声明一个 is_married 变量,并为它赋值 |
| 279 | +11. 声明一个 is_true 变量,并为它赋值 |
| 280 | +12. 声明一个 is_light_on 变量,并为它赋值 |
| 281 | +13. 在一行中声明多个变量 |
| 282 | + |
| 283 | +### 练习: 2级 |
| 284 | + |
| 285 | +1. 使用 _type()_ 内置函数检查你声明变量的数据类型 |
| 286 | +1. 使用 _len()_ 内置函数,算出你 first name 变量的长度 |
| 287 | +1. 比较你 first name 和 last name 变量的长度 |
| 288 | +1. 声明变量 num_one 为5,num_two 为4 |
| 289 | + 1. 将 num_one 和 num_two 相加,并赋值给 total 变量 |
| 290 | + 2. 将 num_one 和 num_two 相减,并赋值给 diff 变量 |
| 291 | + 3. 将 num_one 和 num_two 相乘,并赋值给 product 变量 |
| 292 | + 4. 将 num_one 和 num_two 相乘,并赋值给 division 变量 |
| 293 | + 5. 使用模数除法求出 num_two 除以 num_one 的结果,并将结果赋给变量 remainder |
| 294 | + 6. 计算 num_one 的 num_two 次方并将值赋给变量 exp |
| 295 | + 7. 计算 num_one 除以 num_two 商的整数部分(整除操作),并将结果赋给变量 floor_division |
| 296 | +1. 圆的半径为 30 米。 |
| 297 | + 1. 计算圆的面积并将值赋给名为 _area_of_circle_ 的变量 |
| 298 | + 2. 计算圆的周长并将值赋给名为 _circum_of_circle_ 的变量 |
| 299 | + 3. 将半径作为用户输入并计算面积。 |
| 300 | +1. 使用内置输入函数从用户那里获取名字、姓氏、国家和年龄,并将值存储到相应的变量名中 |
| 301 | +1. 在 Python shell 或文件中运行 help('keywords') 检查 Python 保留字或关键字 |
| 302 | + |
| 303 | + |
| 304 | + |
| 305 | +🎉 恭喜 ! 🎉 |
| 306 | + |
| 307 | +[<< 第一天](./readme.md) | [第三天 >>](./03_operators.md) |
0 commit comments