小白必备基础语法练习

小白必备基础语法练习

1 什么是动态类型语言?

要了解什么是动态语言,需要首先了解“类型检查”。

类型检查是验证类型约束的过程,编译器或解释器通常在编译阶段或运行阶段做类型检查。

类型检查就是查看“变量”和它们的”类型”,然后判断表达式是否合理。例如,不能拿一个 string 类型变量除以浮点数变量。

如果类型检查发生在程序运行阶段,那么它便是“动态类型语言”。常见的动态语言包括:Python、JavaScrpit、PHP.

2 什么是强类型语言?

强类型语言是指不管是在编译阶段还是运行阶段,一旦某种类型绑定到变量后,此变量便会持有此类型,并且不能同其他类型在计算表达式时混合使用,例如不支持 int 变量和 str 变量相加。

常见的强类型语言有:Python、Java、C#、Scala

3 Python 常用的两个命名规则?

Python 的变量命名规则主要包括两条:

1) 允许包括英文、数字以及下划线(_),不能以数字开头 2) 名称区分大小写

特别说明以下划线开头的变量具有特殊意义。

4 Python 变量命名都有哪些习惯?

Python 变量命名习惯一般遵守蛇形命名法(snake case):

1) 一般变量命名,book_id、book_storecount; 2) 类名首字符为大写,如 Python 内置模块 collections.abc 中的 Iterable 类、我们自定义的 Book 类等; 3) 类方法名:get_storecount(); 4) 其他特殊变量,会全部大写,M_PI、MAX_VEHICLE_SPEED。

这与 Java 命名方法不同,Java 最典型的命名方法——驼峰命名法(camel case)

5 Python 最具特色的缩进原则主要作用是什么?

Python 最具特色的地方就是用缩进代替 Java、C++ 中的 {},缩进的层级结构表示代码的逻辑层次。

下面定义的 pandas_read 方法,用代码缩进表示逻辑结构,看不到 {}.

def pandas_read(filename,sep=',',chunksize=5):
    reader = pd.read_csv(filename,sep=sep,chunksize=chunksize)
    while True:
        try:
            yield reader.get_chunk()
        except StopIteration:
            print('---Done---')
            break

6 说出 10 个 Python 关键字

Python 共有 35 个关键字:

False      await      else       import     pass
None       break      except     in         raise
True       class      finally    is         return
and        continue   for        lambda     try
as         def        from       nonlocal   while
assert     del        global     not        with
async      elif       if         or         yield

常用且不同于其他常用语言 C++ 和 Java 的关键字,如:

1) TrueFalse 用于表示值的真假,在 Java 中是 truefalse; 2) 逻辑反操作 Python 使用 not,Java 是 !; 3) None 表示空值,Java 使用 null; 4) Python 两个条件同时满足使用 and,Java 是 &&; 5) 两者满足其一,Python 使用 or,Java 使用 ||; 6) Python 使用 elif, Java 是 else if

7 关键字 del 的作用是什么?

del 用于删除可迭代对象中某个元素;

a = [3,5,1]
del a[1]
a

a 变为 :[3, 1]

8 关键字 pass 的作用是什么?

pass 一种应用是定义接口,也是 Python 语言特有的一个关键字。

class A():
    def interface_method(*args, **kargs):
        pass

9 Python 常见的运算符都有哪些?

Python 运算符包括下面这些:

+       -       *       **      /       //      %      @
<<      >>      &       |       ^       ~       :=
<       >       <=      >=      ==      !=

大部分运算符应该被熟知,重点介绍相对陌生一点的: //**

// 用于两个数值相除且向下取整,与 Python 的 math 模块中 floor 功能相似:

In [1]: 5//2
Out[1]: 2
In [2]: 5//4.5
Out[2]: 1.0

** 用于幂运算:

In [1]: 2**3
Out[1]: 8

10 Python 3.8 新增的海象运算符怎么使用?

:= 是在 2019 年,Python 3.8 版本中刚刚才被支持的运算符,被形象地称为“海象运算符”。

n = len(a)
if n > 10:
    print(f"{n}大于10")

如果使用“海象运算符”,写法上更为精简:

if (n := len(a)) > 10:
    print(f"{n}大于10")

11 Python 中如何表示十六进制的整数以及科学计数法表示的浮点数?

前缀加 0x,创建一个十六进制的整数:

0xa5 # 等于十进制的 165

使用 e 创建科学计数法表示的浮点数:

1.05e3 # 1050.0

12 列举几个常用的容器类对象

可容纳多个元素的容器对象常见的有:list 列表、 tuple 元组、dict 字典、set 集合。

Python 定义这些类型的变量,语法非常简洁。使用一对中括号 [] 就会创建一个 list 对象:

lst = [1,3,5] # list 对象
上一篇
下一篇