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的更多相关文章

  1. python学习之路基础篇(第五篇)

    前四天课程回顾 1.python简介 2.python基本数据类型 类: int:整型 | str:字符串 | list:列表 |tuple:元组 |dict:字典 | set:集合 对象: li = ...

  2. python学习之路基础篇(第四篇)

    一.课程内容回顾 1.python基础 2.基本数据类型  (str|list|dict|tuple) 3.将字符串“老男人”转换成utf-8 s = "老男人" ret = by ...

  3. python学习之路基础篇(第八篇)

    一.作业(对象的封装) 要点分析 1.封装,对象中嵌套对象 2.pickle,load,切记,一定要先导入相关的类二.上节内容回顾和补充 面向对象基本知识: 1.类和对象的关系 2.三大特性: 封装 ...

  4. python学习之路基础篇(第七篇)

    一.模块 configparser configparser用于处理特定格式的文件,其本质是利用open来对文件进行操作 [section1] # 节点 k1 = v1 # 值 k2:v2 # 值 [ ...

  5. python学习之路基础篇(三)

    博客参考:http://www.cnblogs.com/wupeiqi/articles/4943406.html http://www.cnblogs.com/luotianshuai/p/4949 ...

  6. Python学习之路基础篇--08Python基础+ 文件的基本操作和 注册小作业

    1 文件的基本操作 #1. 打开文件的模式有(默认为文本模式): r ,只读模式[默认模式,文件必须存在,不存在则抛出异常] w,只写模式[不可读:不存在则创建:存在则清空内容] a, 只追加写模式[ ...

  7. Python学习之路基础篇--02Python基础+小作业

    1 变量 变量就是将一些运算的中间结果暂存到内存中,以便后续代码调用.必须由数字,字母,下划线任意组合,且不能数字开头.不能是python中的关键字,如['and', 'as', 'assert', ...

  8. Python学习之路基础篇--01Python的基本常识

    1 计算机基础 首先认识什么是CPU(Central Processing Unit),即中央处理器,相当于人类的大脑.内存,临时储存数据,断电即消失.硬盘,可以长久的储存数据,有固态硬盘,机械硬盘之 ...

  9. python学习之路——基础篇(3)模块(续)

    re正则表达式.shutil.ConfigParser.xml 一.re 正则元字符和语法: 语法 说明 表达式 完全匹配字符 字符 一般字符 匹配自身 abc abc . 匹配除换行符"\ ...

随机推荐

  1. Mysql 游标的定义与使用方式

    创建游标: 首先在MySql中创建一张数据表: CREATE TABLE IF NOT EXISTS `store` (   `id` int(11) NOT NULL AUTO_INCREMENT, ...

  2. VUE环境搭建及打包上线

    1.vue2.0新手填坑攻略之使用vue-cli搭建vue项目开发环境到项目发布 https://blog.csdn.net/u010020858/article/details/72865101 2 ...

  3. 使用eclipse IDE遇到的问题

    Problems opening an editor Reason project name does not exist 项目右键->configure->convert to mave ...

  4. 牛客网Java刷题知识点之File对象常用功能:获取文件名称、获取文件路径、获取文件大小、获取文件修改时间、创建与删除、判断、重命名、查看系统根目录、容量获取、获取某个目录下内容、过滤器

    不多说,直接上干货! 获取文件名称.获取文件路径.获取文件大小.获取文件修改时间 FileMethodDemo.java package zhouls.bigdata.DataFeatureSelec ...

  5. 【转】jsoup的使用

     Jsoup的使用   jsoup 是一款 Java 的HTML 解析器,可直接解析某个URL地址.HTML文本内容.它提供了一套非常省力的API,可通过DOM,CSS以及类似于JQuery的操作方法 ...

  6. web前端兼容性整理+完善

    [技巧类] 1.对一些标签统一规范. 2.padding,marign,height,width 写好标准头 <!DOCTYPE html PUBLIC “-//W3C//DTD XHTML 1 ...

  7. C# .NET中自带的委托Actoin、Func详解

    委托是.NET中强大的功能,而.NET为我们提供了2个非常实用的泛型委托,分别是Action.Func [Action] Action是.NET内部提供的一个无返回值.泛型的委托,有16重载,分别是0 ...

  8. c#操作excel的一些记录

    //开启Excel APP            Excel.Application xlApp = new Excel.Application(); //获取程序下bin—>debug下的文件 ...

  9. Swift UI开发初探 (转)

    原文地址:http://www.tairan.com/archives/6600 关于Swift语法,可以参考<Apple Swift编程语言入门教程> 效果如下: 开发环境 Xcode6 ...

  10. 洛谷P3372 【模板】线段树 1(树状数组)

    题意 题目链接 Sol Get到了这题树状数组的做法,感觉非常nice 区间加:直接差分 区间求和:考虑每一位的贡献 \(sum_{i = 1}^x (x+1 - i) d_i\) \(= sum_{ ...