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. 性能测试工具LoadRunner12-LR之Virtual User Generator 脚本编写验证步骤以及LR常见错误处理方法

    验证脚本比较好的流程: Generate:录制或开发脚本 SUSI(Single User Single Iteration,单用户单循环):运行录制生成的脚本,解决可能存在的关键问题 SUMI(Si ...

  2. (转)Nagios 配置及监控

    Nagios 配置及监控 原文:http://blog.csdn.net/linuxlsq/article/details/52606824 Nagios 监控 在互联网日益发展的今天,监控的重要性已 ...

  3. pat1080. Graduate Admission (30)

    1080. Graduate Admission (30) 时间限制 200 ms 内存限制 65536 kB 代码长度限制 16000 B 判题程序 Standard 作者 CHEN, Yue It ...

  4. C# 多线程之线程同步

    多线程间应尽量避免同步问题,最好不要线程间共享数据.如果必须要共享数据,就需要使用同步技术,确保一次只有一个线程访问和改变共享状态. 一::lock语句 lock语句事设置锁定和接触锁定的一种简单方法 ...

  5. Js中parseFloat()方法所产的精度不一致问题

    <script language="javascript"> function checkForm(){ var Sum="0.11"; var S ...

  6. c# 的默认访问修饰符(转)

    c# 的访问修饰符是private 还是 internal? 准确的说,不能一概而论. 类(class)或结构(struct)如果不是在其它类或结构中的话,它的访问类型要不就是internal, 要不 ...

  7. JavaScript 函数 (function)

    //声明(有参数.有返回值) function fun() { var name = '小黑'; ) { name = arguments[]; //接受参数 } alert(name); retur ...

  8. C#开发usb通知之bulk传输

    usb通信分为4种传输方式,下位机通信协议用的是块传输,也就是bulk传输,C#下实现的usb通信使用的是开源的LibUsbDotNet,主要的就是需要在C#中添加LibUsbDotNet.dll引用 ...

  9. xml解析demo使用

    package lianxi; import java.io.FileOutputStream;import java.io.OutputStreamWriter; import javax.xml. ...

  10. Android - 看似内存泄漏,实则不是,记一次内存泄漏的案例分析

    APP中常常会存在内存泄漏的问题,一个简单的测试方法是,多次进入和退出同一页面(Activity),使用adb shell中的dumpsys meminfo com.android.settings ...