Python基础_Python基础知识整理(入门篇)

一、介绍

在上一篇文章中,我们顺利地搭建了Python项目但也只是了解到了工具怎么用,对于Python的基础认识和应用相对缺少,本文以项目为目标对Python需要的知识进行普及。

二、整理

1、PyWeb如何声明一个包?

分析:每个依赖包都需要通过【_init_.py】这个来表明自己是个应用包 ,而我们from使用的是包里面的各种py里面的方法


2、如何引入依赖?

from django.urls import path
from web import views
from web.login import viewsLogin

urlpatterns = [
    path('admin/', admin.site.urls),
    path('web/', views.index),#内部的templates/xxx
    path('web/indexWeb/', views.indexWeb),#外部的templates/web/xxx
    path('web/indexOut/', views.indexOut),#外部的templates/xxx
    path('web/login', viewsLogin.indexLogin),#内部的templates/login/xxx
]

说明:Python通过分包来存放代码,只有【APP模块】才能被作为包【import】出来使用,【from 指向的是从包里面要引用的方法路径】,如我们的【views.py】文件是在web文件夹下面,那么则【from  web import  views】,而我们的【viewLogin.py】文件是在【web.login】文件夹下面,则使用他的方法为:【from web.login import viewsLogin】或【from web.login import viewsLogin  as login】

 path('web/login', viewsLogin.indexLogin),

 =>左边是我们浏览器的URL组成部分,右边是我们已经引入的文件里面要调动的方法名

3、变量问题


%s => 在拼接中代表着 ‘字符串’,用法:【%s你好,%s欢迎你,format('小可爱','鬼屋')】


%f => 代表float类型的数据占位符


%d => 代表整型的数据占位符

4、打印细节

print => 默认是换行打印

问题:有时候我们需要实现不换行的打印,只需要在语句后面添加逗号即可

5、【if-elif-else】语句




var res = True

if res:
   print("你好")
else

 6、标识符声明

  说明:数字、字符,下划线,美元符等组成标识符,但不能以数字开头。同时下划线在python中具有特殊的含义,必须小心使用


_myname => 代表只能在当前文件中使用的变量或者方法,无法被import导出


__privateName => 类的私有成员,不能被外部引用


__specialMethod__ :python的内部特殊方法,__init__为构造方法

 分析:官网推荐我们使用下划线组成标识符。但通常情况下为了进行良好的区别。我们使用下划线都是以【xxx_xxx_xxx】这样的形式去使用。 


三、注意事项

1、异常点

=> 布尔值在python中首字母必须大写

=> 在python中空格也是代码中的空格

=> 字符串中添加“\n”会造成字符串回车,在"""\n""" 则不会发生

=> python是一个正则匹配和模糊匹配盛行的世界

=> 使用#字符代表注释

=> python通过严格的缩进和冒号来识别作用域

2、变量类型

说明:Python 中的变量赋值不需要类型声明。根据不同的需要分为五大类:

numbers :数字,包括各种整型,浮点型等

string  :字符串

list    :[] 列表,取代了Java中数组与集合的功能,可以根据索引分片[2:4],[2:],直接使用+号连接组合

tuple   :tuple = ( 'runoob', 786 , 2.23, 'john', 70.2 )相当于只读的列表,操作与list一样

dict    :{key1:value1,key2:value2}相当于java中Map对象,通过dict[key]取值。dict.keys(),dict.values()


说明:以上五种类型由于python没有变量类型声明因此有需要可以直接用

3、内置函数(用于数据类型之间的转化)

说明:此处参考自菜鸟教程,在开发中只在某些特殊地方使用


4、特殊运算符号

说明:在python中大部分的规则与java是保持一致的,但仍然存在某些常用而比较特殊的内容:

<算术运算符>

10**20  =>  10的20次方

9//2    =>  取计算结果的正数位,抛弃余数(向下取整) 。 -9//2=-5

===================================================================================================
<赋值运算符>

c *= a  =>  c = c * a

c**= b  =>  c = c** b

===================================================================================================
<位运算符>


& =>  a & b ,如果a和b都是1则结果为1,否则为零

| =>  a | b ,如果a和b有一个为1则结果为1,否则为零

^ =>  a ^ b , 如果a和b不相同则结果为1,否则为零

===================================================================================================
<成员运算符>

in =>  a  in  b  , 元素a被完全包含在元素b里面则为True,b可能是列表,可能是元素

not in =>  a not in b ,元素a不在b里面
===================================================================================================
<身份运算符>

is =>  a  is b , 判断两个标识符是不是引用自同个对象

is  not =>  a is not b ,判断两个标识符是不是引用自不同对象

 逻辑运算符 :

 

说明: 逻辑运算如果为真则按照第二位处理。非零为真


 5、运算优先级

说明:运算的优先级基本上在每一种语言都是相同,但为了不制造出难以理解的麻烦,开发中都是尽量写出清晰明了的逻辑运算。


四、对象内容

说明

=> 每个类对象都需要构建自己的构造方法。 self构造对象的实例,代码需要体现但实际使用可以忽略该栏位的入参

=> 实例化对象的方式与Java中实例化对象类似 :【xxxx = Employee()】

=> 入参信息会被init()给接收

<向对象添加属性>

print(getattr(t,'empCount')) #获取属性 

print(setattr(t,'name',666)) #打印返回的none,但是设置成功了

print(hasattr(t,'empCount')) #判断是否存在属性值

delattr(t,'name') #删除对象中的某个属性

<对象内置类属性

 

 

 

 

 

 

 

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值