Python基础教程笔记 第一章
/ 表示整除,当导入_future_模块中的version时,/ 表示正常的的除法, 此时可用//表示整除,不论数字是整型还是浮点型,都可以用//表示整除。
** 表示幂次方 例如 2**3 表示2的3次方 结果为8
** 运算符的优先级比负号 - 的运算符优先级高,所以 -3**2 = -9 (-3)**2 = 9
Pow(3,2)函数也表示幂次方的计算,此函数表示3的2次方,结果为9
输入使用input函数,input(“please input a number:”) 此语句会输出please input a number:这句提示语句后让用户输入数据。
abs()函数是取绝对值 例如:abs(-4) 结果为4
round()函数是四舍五入取整数,与整数除法不同,整数除法是删除小数部分。 例如:round(4.5) 结果为5, round(4.4) 结果为4
Math模块中的floor()函数是取浮点型整数的不超过该数值的最大整数。 例如:math.floor(32.9) 结果为32.0
Int(32.9) 强制类型转换也是向下取整,其结果也是32。
与floor之相对应的是ceil()函数,它的作用是取不小于该数值的整数。
python的模块导入有两种方式,一种是import math 直接导入模块,这样在使用模块中的函数时前面要加上模块的名字,以防模块中的函数与其他模块中的函数重名时,调用函数有歧义。另一种是form math import sqrt 从模块中导入一个函数,该函数可以直接使用,无需在前面加上模块名。
Python中可以使用变量来引用函数。例如:import math math.sqrt(9) 结果为3.0, 当令foo = math.sqrt时 foo(3) 的结果也为3.0 和前一个方法具有相同的效果。
当用math模块中的sqrt函数来对一个负数开根号时会出现nan的结果,nan表示“not a number”(非数值),这是因为math模块中的sqrt函数只能处理浮点数。使用cmath(complex math,复数)模块中的sqrt函数即可计算负数的开根号。例如:import cmath cmath.sqrt(-1)的结果为1j ,此时的j或者J表示虚部。(1+3j)*(9+4j) 其结果为(-3+31j)。
Python中没有单独的虚数类型,所有的虚数都是被看作为实数部分为0的复数(实数与复数之和)。
有时候会希望像其他程序(比如浏览器,文本编辑器)一样运行python程序(也叫做脚本),而不需要显示的使用python解释器。在unix中有个标准的方法:在脚本的首行加上#!(叫做pound bang或者shebang),在其后面加上解释脚本的程序的绝对路径(这里是python)。#!/usr/bin/env python 不管python二进制文件在哪,程序都会自动执行。
有些安装了旧版本的python的环境可能需要修改后面的绝对路径。
在实际运行脚本前,必须让脚本具有可执行的属性:
$ Chmod a+x hello.py
现在就可以这样运行代码了:
$ hello.py
在window下运行程序时,可能会出现程序执行完,窗口跟着就关闭的现象,在程序的最有加上raw_input(“Press <Enter>”),可以解决这个问题。
Python中的注释是使用‘#’号
Python中的’单引号和’’双引号作用相同,都可以表示字符串,只不过当一个字符串中含有单引号或者双音号时,相应的使用双引号或者单引号来表达字符串。避免解释代码时产生歧义。或者使用转义字符。
Python中可以使用加号+ 来连接两个字符串。但是不能用加号来链接字符串和整数。
Python中值被转换成字符串的两种机制是str和repr ,前者是把值转换成合理形式的字符串,以便用户的理解。例如:print str(“hello world”)输出为 hello world。 Print str(10000L) 输出为 10000。 后者会创建一个字符串,它以合法的python表达式的形式来表示值。例如:print repr(“hello world”) 输出为’hello world’。 Print repr(10000L) 输出为 10000L。repr(X)函数的功能可以用`X`来替换(注意:是反引号,不是单引号)。例如:temp = 42 repr(temp)和`temp`的效果一样,都产生字符串’42’ 。可以该机制使得整型转换为字符串与字符串相加。(python3 中已经不再使用反引号了,最好全部都使用repr函数)
Python中input会假设用户输入的是合法的表达式。raw_input 会把输入当作原始数据,存入字符串中。一般无特殊要求的情况下,都使用raw_input函数。
三引号’’’ 中间可以输入长字符串,可以是多行的,无需要每行后面加上反斜杠\作为换行的标志。在单引号’和双引号’’之间的字符串换行时需要加上反斜杠\表示换行。
在字符串前加上r,可以表示原始字符串,例如:print r’c:\Program File\foo\bar’ ,输入直接为c:\Program File\foo\bar,为不需要转移字符。但是原始字符串最后一个字符不能为反斜杠\,否者程序会不清楚到底是否应该结束该字符串。如果必须在字符串的最有加上一个反斜杠\,那么可以多加一个转义字符反斜杠\,或者将字符串最后的反斜杠\与字符串分开写。
Unicode字符串。普通python的字符串是以8位ascii码存储的,unicode字符串是以16位unicode字符存储,可以表示更多的字符集,包括世界上大多数语言的特殊符号。Unicode字符串的用法与原始字符串r一样,在字符串前加上u。例如:u”hello world”。Python3中的所有字符串都是unicode字符串。

Python基础教程笔记 第一章的更多相关文章
- Python基础教程笔记 第二章
本章的名字虽然叫列表和元组,但是本章讲的最多的是列表,元祖指讲了很少的一部分.因为元组和列表很多方面都是一样的. 列表和元组的区别:列表可以被修改,元祖不可以被修改. python包含的6种内建序列: ...
- 《Python基础教程》第一章:基础知识
如果希望只执行普通的除法,可以在程序前加上以下语句:from __future__ import division.还有另外一个方法,如果通过命令行运行Python, 可以使用命令开关-Qnew.此时 ...
- python基础教程笔记—即时标记(详解)
最近一直在学习python,语法部分差不多看完了,想写一写python基础教程后面的第一个项目.因为我在网上看到的别人的博客讲解都并不是特别详细,仅仅是贴一下代码,书上内容照搬一下,对于当时刚学习py ...
- python基础教程笔记—画幅好画(详解)
今天写一下基础教程里面的第二个项目,主要使用python来做一个pdf的图,比较简单. 首先我们需要安装用到的模块pip install reportlab即可. 书上是用urlopen从往上下了一个 ...
- Python基础教程笔记——第7章:更加抽象(类)
下面进入Python的面向对象: 对象的魔力: 多态:---可以对不同类的对象使用同样的操作 封装:---对外部隐藏对象内部的工作方式 继承:---以普通的类为基础建立专门的类对象 (1)多态: is ...
- Python基础教程笔记——第2章:列表和元组
python shell 里重复上一次的命令:Alt+p 2.3 列表:Python的苦力 (1)list函数 (2)列表赋值,不蹦蹦为一个元素不存在的位置赋值 (3)删除元素,del name[1] ...
- python基础教程第2章——列表与元组笔记
1.序列是Python中最基本的数据结构.序列中的每个元素被分配一个序列号——元素的位置,也称索引,第1个索引是0,第2为1,以此类推.序列中的最后1个元素为-1,倒数第2个位-2. python中有 ...
- Python基础教程笔记——第6章:抽象(函数)
(1)计算裴波那契数列: fbis=[0,1] num=int(input("please input the number")) for i in range(num-2): f ...
- Python基础教程笔记——第4章:字典
字典 字典是Python唯一内建的数学映射类型,字典中的值没有特殊的顺序,键可以是数字,字符串,甚至是元组 字典的创建: 字典由键值对构成,字典中键是唯一的,而值不唯一.>>> a_ ...
随机推荐
- java Html&JavaScript面试题:HTML 的 form 提交之前如何验证数值文本框的内容全部为数字? 否则的话提示用户并终止提交?
提交的验证方法(通过单个字符比较): <!DOCTYPE html> <html> <head> <meta charset="UTF-8" ...
- 使用git stash命令保存和恢复进度
使用git stash命令保存和恢复进度 git stash 保存当前工作进度,会把暂存区和工作区的改动保存起来.执行完这个命令后,在运行git status命令,就会发现当前是一个干净的工作区,没有 ...
- Java中json前后端日期传递处理
这里推荐2种方式 依赖包 <dependency> <groupId>com.fasterxml.jackson.core</groupId> <artifa ...
- Python_深浅拷贝
深浅拷贝 ‘copy’和'='的区别:copy会开辟一个新的空间,而‘=’不会. 浅copy只会copy第一层,再里边的就进行共享了. 需要记住的是copy之后记住的是内存寻址地址,而浅copy时如果 ...
- JZOJ 4757. 树上摩托
Description Sherco是一位经验丰富的魔♂法师.Sherco在第零次圣杯战争中取得了胜利,并取得了王之宝藏——王の树.他想把这棵树砍去任意条边,拆成若干棵新树,并装饰在他的摩托上,让他的 ...
- python学习——StringIO和BytesIO
StringIO 很多时候,数据读写不一定是文件,也可以在内存中读写. StringIO顾名思义就是在内存中读写str. 要把str写入StringIO,我们需要先创建一个StringIO,然后,像文 ...
- 算法图解之大O表示法
什么是大O表示法 大O表示法可以告诉我们算法的快慢. 大O比较的是操作数,它指出了算法运行时间的增速. O(n) 括号里的是操作数. 举例 画一个16个格子的网格,下面分别列举几种不同的画法,并用大O ...
- CTU Open Contest 2017
这场题很水.水题我就懒得贴了. B - Pond Cascade 优先队列维护这个水池需要多少时间 或者 直接扫一遍. #include <cstdio> #include <cst ...
- Spring.Net初认识——竹子整理
留个脚印,过两天总结. 看到知乎上有人对于DI|IOC 的解释,满不错,收藏下先 作者:OneNoodle链接:http://www.zhihu.com/question/23277575/answe ...
- WPF异步回调时回调函数如何获取异步函数产生的变量
有这么一个问题,WPF在使用异步回调的时候,回调函数需要用到异步函数里产生的一个变量,例如异步函数里查询数据库得到了一个DataTable,如何传递给回调函数呢? [方案一]使用全局变量 很容易想到的 ...