python基础教程笔记(第一章)

1.1python安装

win 开始-python-IDLE(python GUI) 即打开python shell
f1 打开help-docs 可以查阅帮助文档

1.2 交互式解释器

python不以 ';' 为每行结束,一行则为一行。'>>>’ 为提示符

1.3 算法

计算机程序设计:告诉计算机做什么事,有序指令。 包括要素(表达式),对象,物品,指令语句。

1.4 数字和表达式

整数加+-*/
除法默认只显示整数部分

>>>1/2
0

要显示小数点部分,有以下两种方法

  1. 使用实数(包含小数点的十进制数)称为浮点数(float/ float-point number)。
>>>1.0/2.0
0.2
  1. 全程只是用普通的除法,执行以下语句:
>>>from_future_import division

linux系统下可以通过命令行开关-Qnew
这样就可以让python只执行普通的除法
此时,双斜线就是整除的作用

>>>1//2
0.0

其他计算

  1. 取余数 % 。 可以用来做类似 ‘每十分钟检查一次’ 的作用, 检查时间10%的结果是否为0.
>>> if 1==2: print 'One equals two’
>>> if 1==1: print 'One equals one‘
...
One equals one
>>>

(交互式解释器执行if 语句按两次回车)
检查整点:

>>> if time % 60==0: print 'One the hour!'

2.幂(乘方)**。幂运算优先于-负号,所以 -3**2 等同于 -(3**2)

长整形数(结尾加L表示)

  • 普通整数 在 -2 147 483 648 至 2 147 483 647之间,大于这个数会报错,这时候在数字后面加L表示长整数型就可以使用了。
  • 长整数型可以和普通整数混用

十六进制和八进制

首数字都是0
十六进制

>>> 0xAF
175

八进制

>>> 010
8

1.5 变量 variable

赋值(变量取名可以包括字母,数字,下划线。但是不能以数字开头

>>>x=3
>>>x*2
6

变量就像临时的存储器,而且操作变量的时候并不需要知道它存储了什么值,程序中可以多种方法只用变量,而不需要知道在程序运行的时候,最终存储(引用)的值是什么。

1.6 语句

表达式(某事)

>>>2*2
4

语句(做某事)

>>>print 2*2
4

以上两个在解释器中都用repr函数都结果进行呈现了,但是一般情况下python不会打印前者的结果值。
这也是为什么赋值的时候,解释器(将程序存为单独的文件,方便其他用户直接执行)不打印,而是马上提出新的提示符,表示赋值成功。

1.7 获取用户输入

虽然我们不需要变量的值,但是解释器需要知道,这时候如果需要用户输入值,使用 input函数

>>>x=input("x: ")
x: 34
>>>y=input("y: ")
y: 42
>>>print x*y
1428

和raw_input区别

>>>name=input("What is your name?"
>>>print "Hello, " +name + "!"
what is your name? "Gumby"
Hello, Gumby
#此时必须输入带引号,表示是字符串的回答
>>>name=raw_input("What is your name?")
>>>print "Hello, " +name + "!"
what is your name? Gumby
#此时不需要输入引号,输入自己真实的答案即可
Hello, Gumby

1.8 函数(如同特定功能的小程序)

pow(x,y) 代替 幂(乘方) **
python已有的标准函数成为内置函数
使用函数需要调用函数,使用后返回值。函数的调用可以看做是另一类表达式

>>> 10+pow(2, 3*5)/3.0
10932.666666666666

其他函数: 求绝对值abs(x), 四舍五入round(y)

1.9 模块

比如向下取整floor(x) 这样的函数无法直接调用,需要到导入(import)模块以后使用。 floor 在 math模块中。
导入后使用格式: 模块.函数

>>>import math
>>> math.floor(32.9)
32.0
>>>#这里int其实直接会取整数部分,不需要向下取整,直接Int(32.9)就可以得到结果
>>>int(math.floor(32.9))
32

但是如果使用 from 模块 import 函数 则可以直接使用函数

>>> from math inport sqrt
>>>sqrt(9)
3.0

或者赋值给函数

>>> import math
>>> foo=math.sqrt
>>>foo(4)
2.0

1.9.1 cmath(complex math,复数)

由于sqrt只能处理浮点数,无法处理虚数或复数,用sqrt求负数的平方根会报错或得到nan(not a number), 这时可以用cmath来处理

>>>import cmath #直接import然后带模块名引用避免和math.sqrt的函数命名冲突
>>>cmath.sqrt(-1)
1j

python支持复数和实数一样运算

1.10 运行程序(mac 电脑无法实操,直接用pycharm运行了,可以使用)

打开运行
win c:\>python hello.py unix $python hello.py
在脚本首加上 #!/usr/bin/env python #!称之为 pound bang 或者shebang
这样无论文件在哪,都会执行。
如果有多个版本的python,则要在pound bang中使用完整路径
#!/usr/bin/python2
在运行脚本之前,先让脚本文件有可执行的属性 $ chmod a+x hello.py
然后就可以运行代码了,假设路径是当前文件
$ hello.py

第一个程序代码:

#!/usr/bin/env python
print "Hello,world"
name=raw_input("What is your name")
print "Hello," + name + '!'
raw_input("Press <enter>")

1.11 字符串

  1. 嵌套使用不同引号 python同时支持双引号和单引号。 字符串里面使用引号,属于字符串的内容时,外面使用另一种引号,这样可以避免解释器看不懂。
>>>"Let's go!"
"Let's go!"
>>>'"Hello, world!" she said'
' "Hello, world!" she said'
>>> 'Let's go'
SyntaxError: invalid syntax
  1. 也可以使用\ 转义
>>>'Let\'s go!'
"Let's go!"
>>>path='C:\nowhere'
>>>path
C:
owhere
>>>path='C:\\nowhere'
>>>path
C:\\nowhere
  1. 拼接字符
>>>"Let's say " '"Hello, world!"'
'Let's say "Hello, world!"'
>>>x="Let's say "
>>>y='"Hello, world!"'
>>>x+y
'Let's say "Hello, world!"'
  • 通过python直接打印的结果显示的是该值在python代码中的状态,所以上述字符串结果返回最外面都带引号(repr()也是这个结果),如果不想要最外面的引号,可以使用print()函数。
  1. 三个引号显示原本内容
'''内容
内容
内容‘’‘ 

在文本内容前后套3个单引号/双引号则可以完整保留文本格式和内容,包括换行,斜线,都作为文本内容。 但是如果一行的最后一个字符是反斜线,则解读为不换行。

  1. 原始表达式
    在字符串外加r ,原模原样打印, 但是转义还是要转义的,虽然转义的也会显示出来,最后一个字符不可以是反斜线,会报错。 正则中用的很多。
>>>print r'Let\'s go'
Let\'s go
>>>print r'Let's go'
SyntaxError: invalid syntax

如果一定要在最后加上反斜线,那就把反斜线当做单独的字符串来处理(记得转义)。

知识点总结:
四则运算: + - * /
普通除法设置:from _future_ import divison ; //
余数: % ( 可做XX时检查工作)
幂:**pow(x,y)
绝对值: abs(x)
四舍五入: round(x)
向下取整: math.floor(x)
平方根:math.sqrt(x)
浮点型float point number: 3.2
长整数型: 数字L
打印: print 显示内容
获取用户输入: input('显示内容: ");raw_input('显示内容: ")
导入函数:import ...; from ... import ...
非数: nan(not a number)
虚数和复数: cmath.sqrt
装在未来成为标准库的内容模块: _future_
引号: ' ' ; " "
转义符号: \转义单个字符
拼接:'字符串' '字符串' ; '字符串' + '字符串'
转化为字符函数: str()
创建字符串,以合法python表达式形式显示: repr()
字符串相关: '''内容'''; r'内容'

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 216,919评论 6 502
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 92,567评论 3 392
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 163,316评论 0 353
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 58,294评论 1 292
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 67,318评论 6 390
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 51,245评论 1 299
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 40,120评论 3 418
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 38,964评论 0 275
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 45,376评论 1 313
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,592评论 2 333
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,764评论 1 348
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,460评论 5 344
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 41,070评论 3 327
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,697评论 0 22
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,846评论 1 269
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 47,819评论 2 370
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,665评论 2 354

推荐阅读更多精彩内容

  • Python 简介Python 是一个高层次的结合了解释性、编译性、互动性和面向对象的脚本语言。Python 的设...
    在暴风雨中逆袭阅读 1,722评论 0 12
  • http://python.jobbole.com/85231/ 关于专业技能写完项目接着写写一名3年工作经验的J...
    燕京博士阅读 7,575评论 1 118
  • 教程总纲:http://www.runoob.com/python/python-tutorial.html 进阶...
    健康哥哥阅读 2,024评论 1 3
  • 好吧,又开始进入我的胡诌八扯时间了,今天总归来说比以前还是有些许进步,虽然不大,但终归还是进了,不要总是苛求自己,...
    Seven707阅读 185评论 0 0
  • 就好比为什么所有的文章都需要标题,有时候我真的只是想说想说的而已,我也不知道为什么要说,我也抓不住什么要去围绕着说...
    霍阿阅读 113评论 0 0