一、标识符

标识符是自己定义的,是开发人员在程序中自己定义的一些符号和名称,如变量名、函数名等。在 Python 里,标识符由字母(区分大小写)、数字、下划线组成,且数字不能开头。常用的命名方法有小驼峰(myName)、大驼峰(MyName),python中常用的是利用下划线连接所有单词。不能使用关键字命名。

注意:以下划线开头的标识符是有特殊意义的。

  • 以单下划线开头 _foo 的代表不能直接访问的类属性,需通过类提供的接口进行访问,不能用 from xxx import * 而导入。
  • 以双下划线开头的 __foo 代表类的私有成员。
  • 以双下划线开头和结尾的 __foo__ 代表 Python 里特殊方法专用的标识,如 __init__() 代表类的构造函数。

二、python关键字

下面的列表显示了在Python中的保留字。这些保留字不能用作常数或变数,或任何其他标识符名称。所有 Python 的关键字只包含小写字母。

三、输入、输出

1、Python输入
(1)Python2 版本:在Python2中,获取键盘的输入数据的方法时采用raw_input ( )和input( )两个函数。
     raw_input ( ):
    • 小括号中放入的是提示信息,用来在获取数据之前给用户的一个简单提示
    • 在从键盘获取了数据以后,会存放到等号左边的变量中
    • 会把用户输入的任何值当做字符串来对待。
     input( ):与raw_ input( )类似,但其接受的输入必须是表达式;并把表达式的结果赋值给等号左边的变量。

(2) Python3版本中
       没有raw_input( )函数,只有input( )函数,并且Python3中的input与Python2中的raw_input( )功能一样。

 
2、Python输出
       python2的输出是print,python3的输出直接变成一个函数print( )。

四、垃圾回收

  1、垃圾回收机制

当一个常量被生成时,会占用一份内存,这时候如果有变量指向该常量,那么该常量的引用计数为1,Python虚拟机规定,当一个常量的引用计数为0,也就是没有变量指向的时候,该常量占用的内存会被回收。

例如:name=user='geqian',此时,变量name和变量user指向常量'geqian'这个内存,常量的引用计数为2,使用内置函数id(变量名 )查看两个变量的id,id是相同的,那么就说明有两个指针指向常量'geqian'这个内存。

使用del(name)和del(user)分别删除指针name、user,再次访问name,会有如下提示,也就是指向常量的内存的所有指针都已经被删除了,引用计数为0.

 2、python是强类型的动态脚本语言

  • 强类型:不允许不同类型相加。例:整型+字符串会报类型错误
  • 动态:不用声明数据类型,确定一个变量的类型是在给他赋值的时候。
  • 脚本语言:一般是解释性语言,运行代码只需要一个解释器,不需要编辑。

五、python其他

  1、编码格式

Python中默认的编码格式是 ASCII 格式,在没修改编码格式时无法正确打印汉字,所以在读取中文时会报错。这时,需要在文件开头加入 # -*- coding: UTF-8 -*- 或者 # coding=utf-8,注意:# coding=utf-8 的 = 号两边不要空格。

Python3.X 源码文件默认使用utf-8编码,所以可以正常解析中文,无需指定 UTF-8 编码。如果你使用编辑器,则需要设置 py 文件存储的格式为 UTF-8,否则会出现类似以下错误信息:

Pycharm 设置步骤:

    • 进入 file > Settings,在输入框搜索 encoding
    • 找到 Editor > File encodings,将 IDE Encoding 和 Project Encoding 设置为utf-8。

 2、行和缩进

(1)缩进:

Python 的代码块不使用大括号 {} 来控制类、函数以及其他逻辑判断,而是用缩进来写模块。缩进的空白数量是可变的,但是所有代码块语句必须包含相同的缩进空白数量。 建议每个缩进层次使用 单个制表符 或 两个空格 或 四个空格 , 切记不能混用。

(2) 行:

Python语句中一般以新行作为语句的结束符,但是我们可以使用斜杠( \)将一行的语句分为多行显示。语句中包含 [], {} 或 () 括号就不需要使用多行连接符。

(3)空行:

函数之间或类的方法之间用空行分隔,表示一段新的代码的开始。类和函数入口之间也用一行空行分隔,以突出函数入口的开始。空行与代码缩进不同,空行并不是Python语法的一部分。书写时不插入空行,Python解释器运行也不会出错。但是空行的作用在于分隔两段不同功能或含义的代码,便于日后代码的维护或重构。记住:空行也是程序代码的一部分。

(4)同一行显示多条语句

Python可以在同一行中使用多条语句,语句之间使用分号(;)分割。

3、引号

Python 可以使用引号( ' )、双引号( " )、三引号( ''' 或 """ ) 来表示字符串,引号的开始与结束必须是相同类型的。其中三引号可以由多行组成,是编写多行文本的快捷语法,常用于文档字符串,在文件的特定地点,被当做注释

4、注释

python中单行注释采用 # 开头,python 中多行注释使用三个单引号(''')或三个双引号(""")。

5、多个语句构成代码组

缩进相同的一组语句构成一个代码块,我们称之代码组。像if、while、def和class这样的复合语句,首行以关键字开始,以冒号( : )结束,该行之后的一行或多行代码构成代码组。我们将首行及后面的代码组称为一个子句(clause)。

Python基础002---基础知识的更多相关文章

  1. Python进阶----计算机基础知识(操作系统多道技术),进程概念, 并发概念,并行概念,多进程实现

    Python进阶----计算机基础知识(操作系统多道技术),进程概念, 并发概念,并行概念,多进程实现 一丶进程基础知识 什么是程序: ​   程序就是一堆文件 什么是进程: ​   进程就是一个正在 ...

  2. Python开发(一):Python介绍与基础知识

    Python开发(一):Python介绍与基础知识 本次内容 一:Python介绍: 二:Python是一门什么语言 三:Python:安装 四:第一个程序 “Hello world” 五:Pytho ...

  3. Python黑客编程基础3网络数据监听和过滤

    网络数据监听和过滤 课程的实验环境如下: •      操作系统:kali Linux 2.0 •      编程工具:Wing IDE •      Python版本:2.7.9 •      涉及 ...

  4. Python旅途——入门基础

    1.入门 ​ 作为近几年计算机程序设计语言中很火的Python,是一种面向对象的动态类型语言,最初被设计用于编写自动化脚本(shell),随着版本的不断更新和语言新功能的添加,越来越多被用于独立的.大 ...

  5. Python 面向对象之五 基础拾遗

    Python 面向对象之五 基础拾遗 今天呢,就剩下的面向对象的相关知识进行学习,主要会学习以下几个方面的知识:1.上下文管理协议,2.为类加装饰器 3.元类 一.上下文管理协议 在学习文件操作的时候 ...

  6. Python进阶----线程基础,开启线程的方式(类和函数),线程VS进程,线程的方法,守护线程,详解互斥锁,递归锁,信号量

    Python进阶----线程基础,开启线程的方式(类和函数),线程VS进程,线程的方法,守护线程,详解互斥锁,递归锁,信号量 一丶线程的理论知识 什么是线程:    1.线程是一堆指令,是操作系统调度 ...

  7. 第二章 python之计算机基础

    @python基础 零基础就是个幌子,因为零基础什么都干不了. 如果零基础随随便便就把自动化做起来,那自动化测试就不值钱了:因为这种简单的事情,谁都可以做到. 本课程从零基础出发,补足基础后,不仅仅学 ...

  8. 深度学习入门者的Python快速教程 - 基础篇

      5.1 Python简介 本章将介绍Python的最基本语法,以及一些和深度学习还有计算机视觉最相关的基本使用. 5.1.1 Python简史 Python是一门解释型的高级编程语言,特点是简单明 ...

  9. 好书推荐---Python网络编程基础

    Python网络编程基础详细的介绍了网络编程的相关知识,结合python,看起来觉得很顺畅!!!

  10. [资料分享]Python视频教程(基础篇、进阶篇、项目篇)

    Python是一种开放源代码的脚本编程语言,这种脚本语言特别强调开发速度和代码的清晰程度.它可以用来开发各种程序,从简单的脚本任务到复杂的.面向对象的应用程序都有大显身手的地方.Python还被当作一 ...

随机推荐

  1. 换个角度学习ASP.NET Core中间件

    中间件真面目 关于ASP.NET Core中间件是啥,简单一句话描述就是:用来处理HTTP请求和响应的一段逻辑,并且可以决定是否把请求传递到管道中的下一个中间件! 上面只是概念上的一种文字描述,那问题 ...

  2. 【Java】几种典型的内存溢出案例,都在这儿了!

    写在前面 作为程序员,多多少少都会遇到一些内存溢出的场景,如果你还没遇到,说明你工作的年限可能比较短,或者你根本就是个假程序员!哈哈,开个玩笑.今天,我们就以Java代码的方式来列举几个典型的内存溢出 ...

  3. Elasticsearch SSL认证/证书制作

    制作目的 在上一篇<elasticsearch7.X x-pack破解>中,我们启用了x-pack模块,elasticsearch集群中,如果使用了x-pack,那么集群中的各节点之间通讯 ...

  4. WEB常见攻击及防御

    对于一个Web应用来说,可能会面临很多不同的攻击.下面的内容将介绍一些常见的攻击方法,以及面对这些攻击的防御手段. 一.跨站脚本攻击(XSS) 跨站脚本攻击的英文全称是Cross Site Scrip ...

  5. 【半译】扩展shutdown超时设置以保证IHostedService正常关闭

    我最近发现一个问题,当应用程序关闭时,我们的应用程序没有正确执行在IHostedService中的StopAsync方法.经过反复验证发现,这是由于某些服务对关闭信号做出响应所需的时间太长导致的.在这 ...

  6. 获取MP4媒体文件时长

    由于之前上传MP4文件没有保存视频时长,现在有需要,所以只好写代码读取时长.找了几个发现是 c/c++ 实现,或者是借助 FFmpeg 实现. 一个偶然在 GitHub 上面发现一个 c 文件,由于获 ...

  7. winform 数据(双向)绑定 快速更新实体

    写点东西感觉特别累,也已经很久没写了. 最近在做一个winform类型的系统,其涉及到大量的表,有些表又包含大量的字段,所以当添加.更新实体时便会十分的繁琐,一方面:需要把界面上的字段绑定到对应的实体 ...

  8. [256个管理学理论]006.刺猬效应(Hedgehog Effect)

    刺猬效应(Hedgehog Effect) 来自于大洋彼岸的让你看不懂的解释: 刺猬效应(刺猬法则)就是人际交往中的“心理距离效应”.人与人之间都应该保持这条底线,过犹不及. 刺猬效应强调的就是人际交 ...

  9. sql中partition的使用

    https://www.cnblogs.com/tfiremeteor/p/6296599.html

  10. Jpa使用详解

    目录 ORM思想 1.ORM概述 2.为什么要使用ORM 3.常见的ORM框架 JPA简介 1.JPA概述 2.JPA的优势 3.JPA与hibernate的关系 JPA入门案例 1.搭建开发环境 常 ...