Python学习之路——基础1
python作为一门解释型的编程语言,和c/c++等其他语言都或多或少有相通的地方,所以有语言基础的话,学起来还是方便一些。所以我的笔记对于相对简单的概念可能会选择放过,但对自己记录的东西我会力求完备。学习所用的系统为Ubuntu的Linux。
数和表达式
除法运算有两种,单斜杠和双斜杠。
a/b运算结果是浮点数。
>>>1/2 0 >>>1/1 1.0
a//b执行整除运算,舍弃小数部分。
>>>1//2 0 >>>1//1 1 >>>5.0//2.4 2.0
python与其他语言在除法运算和求模运算中有一个重要的区别,其整除运算无论正负都是向下圆整结果。因此在结果为负数的情况下,圆整后将离0更远。
>>>10//3 3 >>>-10//3 -4 >>>10//-3 -4 >>>-10//-3 3
求模运算与除法运算类似,也是向下圆整的机制。
>>>10%3 3 >>>-10%3 -2 >>>10%-3 2 >>>-10%-3 -1
不同于c/c++,Python中是没有自增自减操作符的,例如i++,j--。但Python是有+=和-=的。
变量
与其他一些语言不同,Python变量是没有默认值的,因此使用变量前必须进行赋值。
Python中所有变量都是可变的,没有特定的“常量”类型,所以通过约定将变量名的所有字母大写来表示“常量”,但其本质上依然是变量,可改变,所以在实际编程时需要多加注意才是。
cmath和复数
Python标准库提供了cmath来支持复数计算。
>>>import cmath >>>cmath.sqrt(-1) 1j
Python本身默认提供了对复数的支持。在表示复数时,只能用j,且j前必须有数字,即使是1,也需要标出。
>>>(1+3j)*(9+4j) (-3+31j)
单引号、双引号、三引号以及字符串转义
单引号与双引号 其实是没有差别的。同时支持单引号和双引号一个方便的用处是,包含单引号的字符串可以用双引号括起或是包含双引号的字符串可以用单引号括起。
更特殊的就是字符串中既有单引号,又有双引号的情况,这是就需要用到三引号(既可以是三个单引号也可以是三个双引号)。三引号支持跨越多行的字符串。三引号也可以用作多行注释
1 >>> print('''This is a long string.It continues here.
2 ... And it's not over yet."hello,world"
3 ... Still here''')
4 This is a long string.It continues here.
5 And it's not over yet."hello,world"
6 Still here
7 >>>
原始字符串
原始字符串不以特殊方式处理反斜杠,用前缀r表示。
1 >>>print(r'C:\nowhere') 2 C:\nowhere
原始字符虽然在某些情况下很有用(如正则表达式)。但这也意味着用于执行转义的反斜杠也将包含在最终的字符串中。
另外,原始字符串不能以单个反斜杠结尾。但可以通过其他方法解决,如将反斜杠分开打印。
>>> print(r"This is illegal!\")
File "<stdin>", line 1
print(r"This is illegal!\")
^
SyntaxError: EOL while scanning string literal
>>> print(r‘C:\Program files\foo\bar''\\')
C:\Program files\foo\bar\
Python学习之路——基础1的更多相关文章
- python学习之路基础篇(第五篇)
前四天课程回顾 1.python简介 2.python基本数据类型 类: int:整型 | str:字符串 | list:列表 |tuple:元组 |dict:字典 | set:集合 对象: li = ...
- python学习之路基础篇(第四篇)
一.课程内容回顾 1.python基础 2.基本数据类型 (str|list|dict|tuple) 3.将字符串“老男人”转换成utf-8 s = "老男人" ret = by ...
- python学习之路基础篇(第八篇)
一.作业(对象的封装) 要点分析 1.封装,对象中嵌套对象 2.pickle,load,切记,一定要先导入相关的类二.上节内容回顾和补充 面向对象基本知识: 1.类和对象的关系 2.三大特性: 封装 ...
- python学习之路基础篇(第七篇)
一.模块 configparser configparser用于处理特定格式的文件,其本质是利用open来对文件进行操作 [section1] # 节点 k1 = v1 # 值 k2:v2 # 值 [ ...
- python学习之路基础篇(三)
博客参考:http://www.cnblogs.com/wupeiqi/articles/4943406.html http://www.cnblogs.com/luotianshuai/p/4949 ...
- Python学习之路基础篇--08Python基础+ 文件的基本操作和 注册小作业
1 文件的基本操作 #1. 打开文件的模式有(默认为文本模式): r ,只读模式[默认模式,文件必须存在,不存在则抛出异常] w,只写模式[不可读:不存在则创建:存在则清空内容] a, 只追加写模式[ ...
- Python学习之路基础篇--02Python基础+小作业
1 变量 变量就是将一些运算的中间结果暂存到内存中,以便后续代码调用.必须由数字,字母,下划线任意组合,且不能数字开头.不能是python中的关键字,如['and', 'as', 'assert', ...
- Python学习之路基础篇--01Python的基本常识
1 计算机基础 首先认识什么是CPU(Central Processing Unit),即中央处理器,相当于人类的大脑.内存,临时储存数据,断电即消失.硬盘,可以长久的储存数据,有固态硬盘,机械硬盘之 ...
- python学习之路——基础篇(3)模块(续)
re正则表达式.shutil.ConfigParser.xml 一.re 正则元字符和语法: 语法 说明 表达式 完全匹配字符 字符 一般字符 匹配自身 abc abc . 匹配除换行符"\ ...
随机推荐
- 表单注册及自定义validate手机验证码验证实例
<!DOCTYPE html> <html lang="zh-CN"> <head> <meta charset="utf-8& ...
- [inner] bug
这样正确 command: ["sh", "-c", "mysql -h${DC_DB_HOST} -uroot -p${MYSQL_ROOT_PAS ...
- IOS Intro - NSDictionary and NSMutableDictionary
NSDictionary.NSMutableDictionary的基本用法 1.不可变词典NSDictionary 字典初始化 NSNumber *numObj = [NSNumber numberW ...
- 性能测试工具LoadRunner29-LR之测试java代码
步骤: 1.安装配置JDK(注意LR11最高支持jdk1.6的版本) 2.JAR包的导入 在LR中创建java Vuser脚本并且保存,我保存的文件夹名称为lr_java 将jar包放到这个文件夹下 ...
- 转:自定义控件三部曲之动画篇——alpha、scale、translate、rotate、set的xml属性及用法
第一篇: 一.概述 Android的animation由四种类型组成:alpha.scale.translate.rotate,对应android官方文档地址:<Animation Resour ...
- compile with -fPIC
在新公司工作第四天,依然要编译FFmpeg,不同的是难度大了,以前遇到什么参数编译不过的,就去掉,因为不是专业做视频的,但是新公司绕不过了. 编译FFmpeg动态库的时候发现链接某些静态库的时候会报错 ...
- asp实现网页浏览总数
<% AlldayView=0 Set Rs=Server.CreateObject("Adodb.RecordSet") Sql="select * from v ...
- [转]javascript之数组操作
javascript之数组操作 .数组的创建 var arrayObj = new Array(); //创建一个数组 var arrayObj = new Array([size]); //创建一个 ...
- 《Google软件测试之道》之学习笔记01
Google软件测试介绍 软件测试团队->工程生产力(Engineering Productivity) http://googletesting.blogspot.com/2011/01/ho ...
- hibernate课程 初探一对多映射1-1 课程简介
hibernate 常见映射类型 one-to-many many-to-one one-to-one many-to-many