# python 学习笔记（1）——变量和类型 Contents

## 变量和类型

### 变量类型

#### 类型分类

1. 整型：Python 中可以处理任意大小的整数（自带高精度的男人），并且轻松支持 $2,8,10,16$ 进制，大概表示方法就是 0b1000o1001000x100 这样。

2. 浮点型：跟 C/C++ 差不太多，也支持科学计数法。

3. 字符串型：注意跟 C/C++ 不同的是，无论用单引号还是双引号，框起来的那段文本都是字符串型，比如 'miaom'"miaom" 表示的是同一个字符串。

除此之外，还可以书写成多行形式，用三个单引号或者双引号开始和结尾即可：

str1 = '''lyk：*****
bb：*****
lyk 跟 bb 撕逼现场'''

4. 布尔型：唯一注意的是，TrueFalse 都需要首字母大写

5. 复数型：形如 3+5j，跟数学上的复数表示一样，也就是把 i 换成 j 而已。仅做了解。

#### 变量命名

• 变量名由字母（广义的 Unicode 字符，不包括特殊字符）、数字和下划线构成，数字不能开头。
• 大小写敏感。
• 不要跟关键字（有特殊含义单词，后面再讲）和系统保留字（函数、模块等名字）冲突。

### 运算

#### 变量运算

• type()：返回变量的类型。
• int()：将一个数值或字符串转换成整数，可以指定进制。
• float()：将一个字符串转换为浮点数。
• str()：将制定的对象转换成字符串形式，可以指定编码。
• chr()：将整数转换成该编码对应的字符串（一个字符）。
• ord()：将字符串（一个字符）转换成对应的编码（整数）。

"""
Version: 0.1
Author: wzf2000
Date: 2020-01-16
"""

a = 233
b = 2 + 5j
c = 3.1415
d = 'miaom ak ioi'
e = True
print(type(a)) # <class 'int'>
print(type(b)) # <class 'complex'>
print(type(c)) # <class 'float'>
print(type(d)) # <class 'str'>
print(type(e)) # <class 'bool'>

f = int(input('a = '))
g = int(input('b = '))

print('%d + %d = %d' % (f, g, f + g))
print('%d - %d = %d' % (f, g, f - g))


1. 行内注释：用 # 开头即可，与 C/C++ 中的 // 一样。
2. 块注释：用 """ 开头结尾，与 C/C++ 中的 /* 一样。

1. input() 中传入一个字符串，表示输出这个字符串作为输入提示，然后读入一行字符串并返回。
2. print() 中前面一个表达式加 %() 里面的参数列表的写法，跟 C/C++ 中 printf() 的含义基本相同，主要就是 %d%s%f。注意 print() 结束后会自动换行，跟 puts() 有点像。

#### 具体的运算符

[] [:]下标，切片
**指数
~ + -按位取反, 正负号
* / % //乘，除，模，整除
+ -加，减
>> <<右移，左移
&按位与
^ |按位异或，按位或
<= < > >=小于等于，小于，大于，大于等于
== !=等于，不等于
is is not身份运算符
in not in成员运算符
not or and逻辑运算符
= += -= *= /= %= //= **= &=复合赋值运算符

### 原文提供的一些练习题以及答案

1. 输入圆半径计算周长和面积
"""
输入半径计算圆的周长和面积

Version: 0.1
Author: 骆昊
"""

import math

perimeter = 2 * math.pi * radius
print('周长: %.2f' % perimeter)
print('面积: %.2f' % area)

2. 输入年份判断是不是闰年
"""
输入年份 如果是闰年输出True 否则输出False

Version: 0.1
Author: 骆昊
"""

year = int(input('请输入年份: '))
# 如果代码太长写成一行不便于阅读 可以使用\对代码进行折行
is_leap = (year % 4 == 0 and year % 100 != 0) or \
year % 400 == 0
print(is_leap)
{"ft_lang_label":"__label__zh","ft_lang_prob":0.8438459,"math_prob":0.9890107,"size":2360,"snap":"2023-14-2023-23","text_gpt3_token_len":1627,"char_repetition_ratio":0.096349746,"word_repetition_ratio":0.023809524,"special_character_ratio":0.39618644,"punctuation_ratio":0.07537688,"nsfw_num_words":0,"has_unicode_error":false,"math_prob_llama3":0.97762555,"pos_list":[0,1,2],"im_url_duplicate_count":[null,1,null],"WARC_HEADER":"{\"WARC-Type\":\"response\",\"WARC-Date\":\"2023-06-09T07:59:47Z\",\"WARC-Record-ID\":\"<urn:uuid:b99aba9a-db4d-498e-8e89-99f624bf7c38>\",\"Content-Length\":\"91665\",\"Content-Type\":\"application/http; msgtype=response\",\"WARC-Warcinfo-ID\":\"<urn:uuid:7c13a986-3964-43df-a047-af9143a6aac5>\",\"WARC-Concurrent-To\":\"<urn:uuid:0a34afb8-44d6-417a-9702-d745a4525906>\",\"WARC-IP-Address\":\"101.43.216.60\",\"WARC-Target-URI\":\"https://wzf2000.top/wzf2000/3519/\",\"WARC-Payload-Digest\":\"sha1:7LWSEGPWFA4TK7WETOCM4DOEXTIVSW4M\",\"WARC-Block-Digest\":\"sha1:PBIPWWXHNWQ6477FFXLCYIUDQQJDA7LP\",\"WARC-Identified-Payload-Type\":\"text/html\",\"warc_filename\":\"/cc_download/warc_2023/CC-MAIN-2023-23/CC-MAIN-2023-23_segments_1685224655446.86_warc_CC-MAIN-20230609064417-20230609094417-00704.warc.gz\"}"}