2-1-0python语法基础--基础-python语法,变量,数据类型对比,编程规范

python基础语法

# 1,关于注释:
单行注释:#,         多行注释:""""      """


# 2,严格区分大小写
比如打印print("123")   ----- 不能写成大写的Print("123")

# 3,严格的缩进
比如打印print("123")   ----- 前面不能有空格,有空格就不对,

python基础语法:变量注释:变量后加冒号

见过一个大佬写的代码是这样的:

user: User = User.objects.filter(id=data.get('uid')).first()
变量名后面的冒号是:类型注解,3.6以后加入的,冒号右边是类型,仅仅是注释,有些鸡肋

变量注释的语法:注释变量类型,明确指出变量类型,方便帮助复杂案例中的类型推断。

var: type = value  其实本质上就是  var = value  # type就是var期望的类型

类型注释只是一种提示,并非强制的,Python解释器不会去校验value的类型是否真的是type

例如:a: str = 10  这样是没有错的,python解释器在执行时会把a当作int来操作(type(a)——int)。      这不像是 C 语言中 int a(a必须是int类型)。

python基础语法:函数注释

可做为函数额外的注释来用。函数注释是一个可选功能,它允许在函数参数和返回值中添加任意的元数据。无论是 Python 本身还是标准库,都使用了函数注释,第三方项目可以很方便的使用函数注释来进行文档编写、类型检查、或者是其他用途。

函数注释包括:
参数注释:以冒号(:)标记
返回值注释:以 -> 标记

def foo(a: expression, b: expression = 5) -> expression:
    ...

示例:

def func(a: 'haha', b: (1, 10), c: float) -> int:
  return a + b + c
print(func(1, 2, 3))
>>> 6

这些注释信息都是函数的元信息,存储在函数的__annotations__属性里。
需要注意,注解对Python解释器没任何意义,python对不做检查,不做强制,不做验证!什么都不做。

python的常量和变量

1,常量是不能被赋值的,变量可以被赋值

比如13 = 13 ,这是会报错的,因为13是一个常量,不能被赋值,

2,变量的赋值是使用的等于号,=

num = 13 ,这个就是变量赋值,

python变量定义的要求和规范

1,变量命名的要求

第一,标识符只能是字母数字下滑线组成,

第二,不能是数字开头,3num=13,这种就不行,

第三,标识符不能是关键字,

import keyword

print(keyword.kwlist) #可以查看有哪些关键字,

第四,标识符区分大小写,Num=14

Google Python命名规范

常用
模块名写法: module_name ; 模块名和包名,全部小写+下划线驼峰,module_name  package_name
包名写法: package_name ;
类名: ClassName ;类的命名采用大驼峰命名法,这一点基本可以达成共识,首字母大写,如CamelCase;
方法名: method_name ;
异常名: ExceptionName ; 类名称,异常,首字母大写+大写式驼峰,class ClassName:   ,ExceptionName
函数名: function_name ;函数的命名采用下划线分隔的小写字母,这种也是达成共识了,如separateed_by_underscores;
全局常量名: GLOBAL_CONSTANT_NAME ; 全局变量、常量,全部使用大写字母+下划线驼峰,GLOBAL_VAR_NAME,CONSTANT_NAME
全局变量名: global_var_name ;  方法名,函数名,其余变量,参数,实例,全部小写+下划线驼峰,method_name,function_name,instance_var_name, function_parameter_name, local_var_name
实例名: instance_var_name ;
函数参数名: function_parameter_name ;
局部变量名: local_var_name .函数名,变量名和文件名应该是描述性的,尽量避免缩写,特别要避免使用非项目人员不清楚难以理解的缩写,不要通过删除单词中的字母来进行缩写. 始终使用 .py 作为文件后缀名,不要用破折号.

其他:
项目名称,首字母大写+大写式驼峰,ProjectName
文件名:全小写,可使用下划线

python变量类型

# 一共是7种数据类型
# 1,Numbers(数字)
num = 10  # int整数
money=123.5  # 浮点数
data=1+2j  # 复数:用来描述平面上的一个坐标,x是1,y是2
# long1=0122L
# long 类型只存在于 Python2.X 版本中,在 2.2 以后的版本中,int 类型数据溢出后会自动转为long类型。在 Python3.X 版本中 long 类型被移除,使用 int 替代。
#############################
# 2,Boolean(布尔值)
isnum=True
# 3,String(字符串)
name='andy'
# 4,List(列表)
list1=[1,2,3]
# 5,set集合
set1= {'apple', 'orange', 'apple', 'pear', 'orange', 'banana'}
# 6,Tuple(元组)
tuple1=(1,2)
# 7,Dictionary(字典)
dict1={"name":"andy","age":18}

字符串、列表、元组、字典每个常用的5个方法?

1,字符串 split/strip/replace/find/index ...
2,列表 append/extend/insert/push/pop/reverse/sort ...
3,元组 len/max/min/count/index ...
4,字典 keys/values/pop/clear/del ...
5,集合  add/remove/clear/交集&、并集 |、差集 - 

操作 数字 字符串 元组 集合 列表 字典
remove × × × √(按元素)
pop × × × √(随机) √(传入key)
clear × × ×
切片 × × ×
count × × ×
index × × ×
+ × √(等同extend) ×
len ×
max ×
min ×
update × × × ×
copy × × ×
  • 1,关于切片和count和index和加号+
    集合是无序的,字典也是无序的,字典是映射,所以没有切片,只有有序序列可以切片
    字符串,元组,列表,都是序列
    但是有可变序列和不可变序列的区分,字符串和元组是不可变序列,列表是可变序列,
    序列才可以加减,

  • 2,关于remove和pop和clear
    这种都是真的的可变的元素,所以集合,列表,字典,都有这两个方法,
    但是字符串和元组是不可变的,所以没有这两个方法,

  • 3,元组的内置方法是最少的,
    只有count和index

posted @ 2020-01-01 11:04  技术改变命运Andy  阅读(208)  评论(0编辑  收藏  举报