之前一直使用python2.7,最近打算学习下python3教程,再此记录下一些要点(未完待续。。。)

1、缩进

缩进有利有弊。好处是强迫你写出格式化的代码,但没有规定缩进是几个空格还是Tab。按照约定俗成的管理,应该始终坚持使用4个空格的缩进。

缩进的另一个好处是强迫你写出缩进较少的代码,你会倾向于把一段很长的代码拆分成若干函数,从而得到缩进较少的代码。

缩进的坏处就是“复制-粘贴”功能失效了,这是最坑爹的地方。当你重构代码时,粘贴过去的代码必须重新检查缩进是否正确

2、数据类型

整数:任意大小的整数,当然包括负整数

浮点数:浮点数也就是小数,很大或很小的小数用科学计数法表示,把10用e替代,1.23x109就是1.23e9,或者12.3e8,0.000012可以写成1.2e-5

字符串:用单引号或双引号括起来的任意文本;如果字符串内部既包含'又包含",可以用转义字符\来标识,如:'I\'m \"OK\"!'表示是 I'm "OK"!;

     转义字符\可以转义很多字符,比如\n表示换行,\t表示制表符,字符\本身也要转义,所以\\表示的字符就是\;

Python还允许用r''表示''内部的字符串默认不转义 print(r'\\\t\\')结果为 \\\t\\

布尔值:True、False

空值:空值是Python里一个特殊的值,用None表示。None不能理解为0,因为0是有意义的,而None是一个特殊的空值。

列表:各个元素类型可以不同,元素可变

字典:

元组:各个元素类型可以不同,但元素不可变

不可变数据类型:整数、浮点数、字符串、元组

3、变量

变量可以使任意数据类型;变量名必须是大小写英文、数字和_的组合,且不能用数字开头;

变量名是对内存中的变量的一个引用

# python干了两件事:1、在内存中创建了一个'ABC'的字符串;2、在内存中创建了一个名为a的变量,并把它指向'ABC'
a = 'ABC'
b = a # 在内存中创建了一个名为b的变量,并把它指向a变量指向的'ABC'
a = 'XYZ' # 在内存中创建了变量’XYZ', 并用变量名a指向‘XYZ'
print(b) # 'ABC'
# 当数据类型为可变数据类型,如列表时:
a = [1, 2, ] # 在内存中创建列表[1,2,], 创建变量名a指向列表
b = a # 创建变量名b,指向变量名a指向的内存地址
a.append(3) # a指向的列表的最后增加元素3
print(b) # [1,2,3] # 此时变量名a和b任然指向同一内存地址

4、常量

python3中通常用全部大写的变量名表示常量,但这只是一种约定

PI = 3.14159265359

python3没有任何机制保护PI不会被改变,用全部大写的变量名表示常量只是一个习惯上的用法,如果你一定要改变变量PI的值,也没人能拦住你

5、除法

python3的除法与python2.7不同

# /除法计算结果是浮点数,即使是两个整数恰好整除,结果也是浮点数
10 / 3 # 3.3333333
9 / 3 # 3.0
# 还有一种除法是//,称为地板除,两个整数的除法仍然是整数
10 // 3 #
# 取余数
10 % 3 #

python3学习笔记的更多相关文章

  1. Python3学习笔记(urllib模块的使用)转http://www.cnblogs.com/Lands-ljk/p/5447127.html

    Python3学习笔记(urllib模块的使用)   1.基本方法 urllib.request.urlopen(url, data=None, [timeout, ]*, cafile=None,  ...

  2. Python3学习笔记 - 准备环境

    前言 最近乘着项目不忙想赶一波时髦学习一下Python3.由于正好学习了Docker,并深深迷上了Docker,所以必须趁热打铁的用它来创建我们的Python3的开发测试环境.Python3的中文教程 ...

  3. python3学习笔记(7)_listComprehensions-列表生成式

    #python3 学习笔记17/07/11 # !/usr/bin/env python3 # -*- conding:utf-8 -*- #通过列表生成式可以生成格式各样的list,这种list 一 ...

  4. python3学习笔记(6)_iteration

    #python3 学习笔记17/07/10 # !/usr/bin/env python3 # -*- coding:utf-8 -*- #类似 其他语言的for循环,但是比for抽象程度更高 # f ...

  5. python3学习笔记(5)_slice

    #python3 学习笔记17/07/10 # !/usr/bin/env python3 # -*- coding:utf-8 -*- #切片slice 大大简化 对于指定索引的操作 fruits ...

  6. Python3学习笔记01-环境安装和运行环境

    最近在学习Python3,想写一些自己的学习笔记.方便自己以后看,主要学习的资料来自菜鸟教程的Python3教程和廖雪峰官方网站的Python教程. 1.下载 1)打开https://www.pyth ...

  7. python3学习笔记(9)_closure

    #python 学习笔记 2017/07/13 # !/usr/bin/env python3 # -*- conding:utf-8 -*- #从高阶函数的定义,我们可以知道,把函数作为参数的函数, ...

  8. python3学习笔记(8)_sorted

    # python学习笔记 2017/07/13 # !/usr/bin/env python3 # -*- coding:utf-8 -*- #python 内置sorted()函数 可以对list进 ...

  9. python3学习笔记(4)_function-参数

    #python学习笔记 17/07/10 # !/usr/bin/evn python3 # -*- coding:utf-8 -*- import math #函数 函数的 定义 #定义一个求绝对值 ...

  10. python3学习笔记(1)_string

    #python学习笔记 17/07/07 # !/usr/bin/evn python3 # -*- coding:utf-8 -*- #r"" 引号当中的字符串不转义 #练习 # ...

随机推荐

  1. 外贸建站之图片预加载JS代码分享

    外贸建站之图片预加载JS代码分享 function preloadimg() { setTimeout(function() { new Image().src = "images/2017 ...

  2. db2一、查询

    1.查询单条数据( fetch 放在最后) select * from x where 1=1 order by id fetch first 1 rows only

  3. lumen----------lumen如何安装和使用redis第三方包扩展

    1. 安装扩展 要使用redis必须安装两个扩展 "predis/predis": "~1.0",   "illuminate/redis" ...

  4. mysql优化:explain分析sql语句执行效率

    Explain命令在解决数据库性能上是第一推荐使用命令,大部分的性能问题可以通过此命令来简单的解决,Explain可以用来查看SQL语句的执行效 果,可以帮助选择更好的索引和优化查询语句,写出更好的优 ...

  5. egg.js异步请求数据

    之前已经简单的使用egg-init初始化项目,并创建控制器controller和服务service 在实际项目中, service主要负责数据的请求,并处理(http请求) controll主要负责获 ...

  6. 压力(性能)测试及jmeter的使用

    github中标注lab3的文档记录了我的详细的实验过程,有关环境搭建.过程理解.实验结果与遇到的问题等,希望可以帮到初学者. 欢迎交流- https://github.com/fogmisty/So ...

  7. Python:re中的group方法简介

    原文地址:http://www.cnblogs.com/kaituorensheng/archive/2012/08/20/2648209.html. 正则表达式中,group()用来提出分组截获的字 ...

  8. C#中的反射 Reflection

    起初是因为这个4.0才新增的新的引用类型,我当时很惊讶为什么string和int他都能装,然后我就发在了群里,以为大佬告诉我他的内部实现是通过反射来实现的,于是我就去看反射了,看了网上的好多篇文章大篇 ...

  9. Laravel 安全:避免 SQL 注入

    当你使用 Eloquent 查询时,如: User::where('name', $input_name)->first(); Eloquent 内部使用的是 PDO 参数绑定,所以你的请求是安 ...

  10. apache24虚拟安装

    1.进入Apache的conf目录 2.打开httpd.conf文件输入: 2.1:查找<IfModule alias_module> 2.2:    在     ScriptAlias ...