python两大特性与四大语法_Python全栈60天 | day01 Python两大特性和四大基本语法

Python语言两大特性

动态语言 2. 强类型语言

Python是一门动态的,强类型的语言.

什么是动态语言?

1. 要了解什么是动态语言,要首先了解 "类型检查".

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

(1) 类型检查就是查看"变量"和它们的"类型",然后判断表达式是否合理.

(2) 例如,不能拿一个string类型的变量除以浮点数变量

3. 如果类型检查发生在程序"运行阶段"(run time),那么它便是"动态类型语言"(dynamically typed languages). 常见的动态类型语言有:

(1) Python

(2) JavaScript

(3) PHP

4. 如果类型检查发生在"编译阶段"(compile time),那么它便是"静态类型语言"(statically typed languages),常见的静态类型语言有:

(1) Java

(2) C++

(3) golang

什么是强类型语言?

1. 强类型语言是指: 不管是在编译阶段还是运行阶段,一旦某种类型绑定到变量后,此变量便会持有此类型,并且不能通其他类型在计算表达式时,混合使用.

(1) 例如在Python中,数值和字符串是不能相加的

a=5

a = a + 's'

程序会抛出异常

(2) 常见的强类型语言: Python,Java

2. 与之对应的是弱类型语言,弱类型语言容易与其他类型混合计算.

(1) JS中可以支持下面操作(和Java的原理不同,Java是强类型语言)

var a = 5

a = a + 's' // string和int结合自动转换为string

(2) 弱类型语言的代表: PHP,JavaScript

3. 强类型语言和弱类型语言 (注意是偏向,不是一定)

(1) 弱类型语言偏向于容忍隐式类型转换

(2) 强类型语言偏向于不容忍隐式类型转换

四大基本语法

1.命名规则 2.缩进原则 3.特殊关键字 4.特殊运算符

命名规则

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

(1) 允许包括英文,数字已经下划线_,不能以数字开头

(2) 名称区分大小写

2. 特别说明"下划线"开头的变量是有特殊意义的:

(1) 类变量(类的变量或方法) 若以单下划线_ 开头,代表不能直接被访问,类似C#的受保护型变量(protected),表示不能通过 import module_name 而导入. 但是其他类是可以访问的,注意理解protected

(2) 类变量(类的变量或方法) 若以双下划线 __ 开头,代表为类的私有成员,不能被导入和被其他类变量访问.

(3) 以双下划线开头和双下划线结尾的变量是Python里的专用标识,有特殊的身份. 如 __init__, __add__

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

(1) 一般变量命名: book_id,book_store_count

(2) 类名首字符为大写,如Python内置模块collections.abc中的Iterable类,我们自定义的Book类等

(3) 模块名是全部小写(对比Java的包名)

(4) 方法名: get_store_count()

(5) 常量全部大写: M_PI,MAX_VEHICLE_SPEED

4. 注意: Python的命名方式与Java不能

(1) Python => snake case 蛇形命名法

(2) Java => camel case 驼峰命名法

缩进原则

1. Python最具特色的地方就是用缩进代替了Java,C++中的大括号{},缩进的层级结构变式代码的逻辑层次.

2. Python的缩进一般定义为4个字符.

3. 缩进格式,行间空行数,变量和扽号空格等Python编码规范参考PEP8

(1) autopep8包遵循PEP8的所有规范,安装此包,做好相关配置,便可自动实现PEP8定制的编码规范

(2) autopep8 --in-place --aggressive --aggressive file.py (在PyCharm的可以进行设置)

特殊关键字

1. Python有35个关键字:

import keyword

print(keyword.kwlist) # keyword.kwlist 关键字列表

自定义的变量名不能与它们重复

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

(1) True和False用于表示值的真假,在Java中是true和false

(2) 逻辑反操作, Python使用 not, Java是 !

(3) None表示空值,Java使用null

(4) Pthon两个条件同时满足使用 and, Java使用 &&

(5) 两者满足其一,Python使用or,Java使用 ||

(6) Python使用elif,Java是 else if

3. 其他比较特殊的关键,如:

(1) del 用于删除可迭代对象中某个元素

(2) def 用于定义函数

(3) 带 yield 用于定义生成器(generator)函数

(4) global 和 nonlocal 一种应用是Python函数式编程的闭包场景

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

特殊运算符

1. Python常用的运算符与其他语言一致,这里主要讲几个特殊的

2. // , ** ,@,:=

(1) // 用于两个数值相除且向下取整,与Python的math.floor()类似

(2) ** 幂运算

(3) @ 装饰器语法

(4) := 海象运算符

3. := 海象运算符, 这个是Python3.8才被支持的 .....

4. Python比较运算还支持链式比较,应用起来更加方便

i = 3

print(1 < i < 3) # False

print(1 < i <=3) # True

小结

1. 首先认识了Python两大特征:

(1) 动态语言: 动态指的是代码运行时才被编译器一行一行翻译执行

(2) 强类型: 强类型指的是办一个类型后便不能修改,不能与其他类型混用

2. Python的四大基本语法:

(1) 命名规则

(2) 缩进原则

(3) 特殊关键字

(4) 特殊运算符

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值