Python-Base01

python 的运行:
    python的解释执行器类型
        CPython     (c语音开发)
        Jython      (java语言开发)
        IronPython  (.net开发)
        PyPy        (python语音开发)

第一个python程序
print('hello world')

执行python程序
$ python3 文件路径名.py

常用文件后缀:
.py             python语言
.c              c语言
.cpp/.cc/.cxx   c++语言
.java           Java语言

在python交互模式下编写并执行代码
进入交互模式:
$ python3 
退出交互模式:
>>>quit()
>>>exit()
或 ctrl + d(输入文件结束符)
或 ctrl + z

python注释
    以#号开头,直至行尾
    作用:
      让注释内容不参加解释执行

sublime 注释快捷键 ctrl + /

python 程序的组成:
    程序是由模块组成的
    模块是由数据,函数,类等组成
    函数由语句组成
    语句由表达式组成

python 核心数据类型
数字(整型int,浮点型float,复数complex,布尔型bool)
字符串str,列表list等

整型数 int
  整数是不带有小数部分的数字
整数的字面值表示方式
    十进制0~9表示方式        123456
    八进制0~7表示方式        0o11(9)
    二进制0~1表示方式        0b111(7)
    十六进制0~9,A~F表示方式  0xFF(255)

浮点数 float
  浮点数是带有小数部分的数字(小数部分可以是0)
小数表示法:
    3.14   3.0   .14
科学计数法:
格式:
    小数 e/E (正负号) 指数
    6.18E-1   等同于 0.618
    2.9979e8  等同于 299790000.0

复数 complex
  分为两个部分:
    实部(real)
    虚部(image)
  虚部是以j或J结尾的数
    1j   2J   1+2J   3-4j

布尔型数 bool
  用来表示真和假两种状态的数字
    True    表示真值 1(条件满足时成立)
    False   表示假值 0(条件不满足时成立)

内置对象
空值 None
    None是一个不存在的特殊对象
    作用:
    用来占位
    变量解除绑定


表达式和运算符
表达式 expression
  由一个数字或数字和运算符等组成
  作用:
    通常让计算机做一些事并返回结果

运算符:
算术运算符
+       加
-       减
*       乘
/       除
//      地板除
%       求余
**      幂

运算符的优先级
**
*  /  //  %
+  -

混合类型自动升级
1+2.14  返回 浮点型3.14
3+4.0   返回 浮点型7.0

基本输出函数 print
格式:
print()
多个数据用逗号分隔开

变量 variable
    变量是关联一个对象的标识符
标识符命名规则:
  必须为字母下划线开头,后跟字母或下划线或数字
  不能使用python关键字

说明:
  python的变量名区分大小写
合法标识符(变量名)举例:
abc    a1b2    _abc    _Aba   var
不合法:
1a2b    $abd    +a    -b    #AC    @ ABC
python关键字:
True,False,None,is,del,if,elif....等

赋值语句
语法:
变量名 = 表达式
变量名1 = 变量名2 = 表达式
变量名1,变量名2 = 序列
作用:
    创建一个变量,此变量用来绑定数据对象
    修改一个变量的绑定关系,让其绑定另一个数据对象
说明:
    当变量不存在时,创建该变量,同事将变量绑定在这个对象上
    当变量存在时,改变此变量绑定的对象
    一个变量只能绑定一个对象
    两个变量可以同时绑定同一个对象

python中的自动化内存管理
a = 1000
b = 2000
a = a + b    #释放a=1000重新绑定3000
c = a        #c同时绑定在3000上

del 语句
作用:
    用于删除变量,同时解除与对象的关联关系,如果可能能释放对象
语法:
    del 变量名

在交互模式下查看当前作用域的所有变量
>>> help('__main__')
退出键:q

自动化内存管理和引用计数refrence count:
  每个对象都会记录有几个变量绑定(引用)自身,当引用的数量为0时,则此对象将会被销毁(释放内存资源),此种自动化内存管理方式叫引用计数


is / is not 运算符
作用:
    判断两个对象是否是同一个对象,当是同一对象时返回True,否则返回False
说明:
    is not 返回值与is 相反

id(obj)函数
作用:
    返回一个对象在内存中的地址

小整数对象池
    Python中,整数-5~256的数永远会存在于小整数池中,不会释放且可反复使用

复合赋值算术运算符
运算符:
y += x    等同于 y = y + x
y -= x    等同于 y = y - x
y *= x    等同于 y = y * x
y /= x    等同于 y = y / x
y //= x   等同于 y = y // x
y %= x    等同于 y = y % x
y **= x   等同于 y = y ** x

 

day02


比较运算符
<   <=   >   >=   ==   !=
比较运算符返回值为布尔值

数值对象的构造(创建)函数
float(obj)  用字符串或数字转换为浮点数,如果不给实参则返回0.0
int(x=0,base=10)    用数字或字符串转换为整数,如果不给出实参则返回0
complex(i=0.0,j=0.0)    用数字创建一个复数
bool(x)    用x创建一个布尔值(True,False)

函数调用表达式
函数名(传参列表)
说明:
  函数调用是表达式,此表达式一定会返回一个对象的引用关系。如果不需要返回值时,通常返回None对象的引用关系。

bool(obj)返回假值的情况
None
False
[]  {}  ()  ''
0   0.0   0j  

内建函数
abs(x)  取x的绝对值
round(number,ndigits=0) 对数值进行四舍五入,ndigits是小数向右取整的位数,负数表示向左取整
pow(x,y,z=None) 相当于 x**y 或 x**y%z

help() 函数查看帮助
help(函数名或对象名)
>>> help(abs)

语句 statements
  语句由一些表达式组成,通常一条语句可以独立执行来完成一部分事情并形成结果
  python建议一条语句写在一行内
  多条语句写在一行内需要用分号(;)分开

显示换行:
    折行符 \(反斜杠)
    折行符必须放在一行的末尾,来示意解释执行器下一行也是本行语句
隐式折行:
    所有的括号的内容换行,成为隐式折行
    括号包括() [] {}

基本输入函数 input
作用:
从标准输入设备上读取一个字符串(末尾的换行符会被删除)
格式:
input('提示字符信息')
说明:
  返回输入的字符串(仅python3)
  提示字符串可以为空

基本输出函数 print
作用:
  将一系列的值以字符形式输出到标准输出设备,默认为终端
格式:
print(value,...,sep=' ',end='\n',file=sys.stdout,flush=False)
选项的关键字参数
sep:两个值之间的分隔符,默认为一个空格
end:输出完毕后在行尾追加字符串,默认为\n

if 语句:
作用:
  主程序根据条件表达式选择性的执行某条或某些语句
语法:
if 真值表达式1:
    语句块
elif 真值表达式2:
    语句块
elif 真值表达式3:
    语句块
...
else:
    语句块
说明:
  elif 可以有0个,或多个
  else 可以有0个,或1个

if语句的真值表达式
if 100:
    print('真值')
等同于
if bool(100)
    print('真值')

if 语句真值表达式返回的对象要用bool(x)取值后在决定执行哪条语句

if 语句的嵌套
    if语句本身是由多条子句组成的一条复合语句

条件表达式
语法:
表达式1 if 真值表达式 else 表达式2
作用:
  根据真值表达式的取值(True/False)
  来决定执行表达式1或表达式2,并返回结果

pass语句
作用:
  通常用来填充语法空白
  pass又名空语句

布尔运算
运算符:not   and   or

布尔非操作 not
语法:
not x
作用:
对表达式X进行布尔取非,如bool(x)为True则返回False,否则返回True
布尔与操作 and
语法:
x and y
注:x,y 代表表达式
作用:
  优先返回假值对象
  当x的布尔值为False时,返回x,否则返回y
布尔或操作 or
语法:
x or y
作用:
  优先返回真值对象
  当x为True时返回x,否则返回y
#默认返回值为0
x = int(input('请输入') or '0')

正负号运算符
+   (正号)
-   (负号)
说明:
  这是一元运算符(只有一个数据参加运算)

 


day03

字符串 str()
作用:
  用来记录文本(文字)信息
字符串的表示方式:
  在非注释中,凡是用引号括起来的部分都是字符串
  ''   单引号
  ""   双引号
  '''  三单引号
  """  三双引号

单引号双引号的区别
    单引号内双引号不算结束符
    双引号内单引号不算结束符
三引号字符串的作用:
    三引号字符串中的换行会自动转换为换行符
    三引号内可以包括单引号或双引号

隐式字符串的拼接
s = 'abcd'"1234"
print(s)   #'abcd1234'

用转译序列代替特殊字符
  字符串字面值中,用字符反斜杠(\)后跟一些字符串代表特殊的一个字符

反斜杠转义字符表:
\'
\"
\\
\n      换行
\r      返回光标至行首  #会覆盖后面的
\t      水平制表符  #Tab
\v      垂直制表符
\f      换页
\b      倒退      #退格
\0      空字符串,字符值为0
\xXX    XX为两位十六进制表示的字符
\uXXXX      XXXX为四个十六进制表示的unicode16字符
\UXXXXXXXX  8个十六进制表示的unicode32字符


ASCII 编码
$ man ascii
常用的ASCII编码
'0'    48    0x30
'A'    65    0x41
'a'    97    0x61

Unicode
    统一编码,分为Unicode16和Unicode32
一个十六进制4个位,一个字节8个位

序列
  字符串就是序列

求序列长度函数len
len(x)    返回字符串的字符个数

raw 字符串(原始字符串)
格式:
r'字符串内容'
r'字符串内容'
r'字符串内容'

字符串的运算
+    加号用于字符串的拼接
*    运算符用于生成重复的字符串


字符串的比较运算
运算符:
> >= == < <= !=
规则
依次按编码值进行比较,直到最短的字符串结束为止,返回值True/False

字符串的索引操作
  python的字符串是不可以改变的字符序列
索引 index 
语法:
字符串[index]
说明:
python 序列都可以用索引来访问序列中的对象
python 序列的正向索引是从0开始的,第二个索引为1,最后一个索引为len(s)-1
python 序列的反向索引是从-1开始的,-1代表最后一个,-2倒数第二个,第一个是-len(s)

切片:
作用:
从一个字符串序列中取出相应的元素重新组成一个字符串序列
语法:
字符串序列[begin:end:step]
说明:
1.开始索引是切片开始切下的位置,0代表第一个元素,1代表第二个元素,-1代表最后一个元素
2.结束索引是切片的终止索引(但不包括终止点)
3.步长是切片每次获取完当前元素移动的方向和偏移量
    1)没有步长,相当于取值完成后向右移动一个索引的位置(默认为1)
    2)当步长为正数时,取正向切片
      步长默认为1,开始索引默认为0,结束索引默认为len(s)
      步长为代表下一次索引的取值的增长值
    3)当步长为负数的时,取反向切片
    默认起始位置是最后一个元素,终止位置是第一个元素的前一个位置

python3中常用于序列的函数
len(x)          返回序列的长度
max(x)          返回序列的最大值
min(x)          返回序列的最小值

字符串编码转换函数
ord(c)          返回一个字符的unicode值
chr(i)          返回这个整数值所对应的字符

整数转字符串函数:
bin(i)          将整数转换为二进制字符串
oct(i)          将整数转换为八进制字符串
hex(i)          将整数转换为十六进制字符串

字符串的构造函数:
str(obj='')     将对象转换为字符串

常用的字符串方法(method)
语法:
对象.方法名(方法传参)

1.输入一个字符串用变量s绑定
  1)判断有几个空格字符
  2)将原有字符串左右空格字符去掉,并打印剩余字符个数
  3)判断输入是否有数字
  4)如果是数学,判断数字是否大于100
2.输入三行文字,让这三行文字在一个方框内居中显示
如输入:
    hello!
    I'm studing python!
    I like python
显示如下:
    +-------------------+
    |      hello!       |
    |I'm studing python!|
    |   I like python   |
    +-------------------+
不要输入中文


day04

ASCII和unicode的区别
    ASCII用8个位表示文字,最高为一定为0,低7位表示数值
    unicode16 是有16个位组成的(0-65535)0x0000~0xFFFF

字符串的格式化表达式
作用:
生成一定格式的字符串
语法格式:
格式字符串 % 参数值
格式字符串 % (参数值1,参数值2,...)
说明:
格式化字符串中以%开头的为占位符,占位符的位置将用参数值替换

格式化字符串中的占位符和类型码:
%s      字符串,使用str()转为字符串
%r      字符串,使用repr()转为字符串
%c      整数转为字符串,使用chr(i)函数
%d      十进制整数
%o      八进制整数
%x      十六进制整数(字符a-f小写)
%X      十六进制整数(字符A-F大写)
%e      指数型浮点数(e小写) eg:2.9e+10
%E      指数型浮点数(E大写) eg:2.9E+10
%f,%F   浮点十进制形式
%g,%G   进制形式浮点或指数浮点自动转换
%%      等同于一个%字符

占位符和类型码之间的格式语法:
% [- + 0 宽度.精度] 类型码
-    左对齐
+    显示正号
0    左侧空白处补零
宽度:整个数据输出的宽度
精度:保留小数点后多少位,默认6位

示例:
'%5d' % 123    # '  123'
'%+5d' % 123   # ' +123'
'%-5d' % 123   # '123  '
'%05d' % 123   # '00123'
'%7.2f' % 3.1415926535897932  # '   3.14'


循环语句:
while 语句
for 语句

while 语句
作用:
根据一定条件,重复的执行一条语句或多条语句
语法:
while 真值表达式:
    语句块1
else:
    语句块2
说明:
    1.先执行真值表达式,测试布尔值是否为True/False
    2.如果真值表达式测试值为True,则执行语句1,然后再返回到第一步,重复进行测试
    3.如果真值表达式测试值为False,则执行else子句中的语句块2,然后结束此while语句,如果没有else子句,则直接结束此while语句的执行
    注:
    else 子句部分可以省略

while 语句的注意事项
    要控制循环真值表达式的值来防止死循环
    通常用真值表达式的循环变量来控制循环条件
    通常在循环语句块内改变循环变量来控制循环次数和变量走向

while的循环嵌套
while 语句本身是语句,和其他语句一样,可以嵌套放入任何复合语句中

break 语句
作用:
    用于循环语句(while,for)中,用来终止当前循环语句执行
说明:
    当break语句执行后,此循环语句break之后的语句将不再执行
    break语句通常和if 语句组合使用
    break语句终止循环时,循环语句else子句的语句将不会执行
    break语句只能终止当前循环语句的执行,如果有循环嵌套时,不会跳出嵌套的外重循环
    break语句只能在循环语句(while/for)内部使用

死循环
    指循环条件一直成立的循环
    死循环通常用break语句来终止循环
    死循环的else子句永远不会执行

练习
1.任意输入一些数,当输入负数时结束输入
   当输入完成后,打印输入这些数的和

2.写程序求
    Sn = 1 + 1/2 + 1/4 +....+ 1/(2**n)
    求当前等于100时,Sn

3.用while语句实现打印三角形,输入一个整数,表示三角形的宽度和高度
    如:
    输入:4
    打印:
    *
    **
    ***
    ****

 


day05

for 语句
作用
用来遍历可迭代对象的数据元素

可迭代对是指能依次获取数据的元素对象
可迭代对象包括
字符串str()
列表list
元组 tuple
字典 dict
...

for 语法
for 变量列表 in 可迭代对象:
    语句块1
else:
    语句块2

说明:
当循环内部用break语句终止循环时,else子句部分的语句不会执行
else 语句当可迭代对象不能提供数据时执行


range() 函数:
格式:
range(start,end[,step])
生成一个起止为start,结束为end,步长为step的可迭代对象

作用:
用来创建一个生成一系列整数的可迭代对象(也叫整数序列生成器)
说明:
range函数调用返回的对象可用于for语句来进行一次迭代取出其中的整数


for 语句嵌套


continue 语句
作用:
用于循环语句中(while/for),不在执行本次循环内continue之后的语句,重新开始一次新的循环

说明:
1.在while语句中执行continue语句,将会直接跳转到while语句的真值表达式处理重新判断循环条件
2.在for 语句中执行continue语句,将会从可迭代对象中取下一个元素绑定改变了后再次进行循环


示例:continue.py

for x in range(5):
    if x == 2:
        continue
    print(x)


循环总结:
语句
    while 语句
    for 语句
        字符串
        range函数返回对象
        可迭代对象
    break 语句:结束当前循环语句的执行
    continue 语句:结束本次循环,重新开始新的循环

列表 list 
    1.列表是一种容器(通常用来存储计算机的数据对象)
    2.列表是可以被改变的序列
    3.类别是由一系列特定元素组成的,元素与元素之间可能没有任何的关联关系,但他们之间由先后顺序关系

创建空列表的字面值方式
     L = []     #L绑定空列表

创建非空列表的字面值方式
    L = [1,2,3,4]      #
    L = ['北京','上海','深圳']
    L = [1,'TWO',3.14,[1,2,3]]

列表的构造函数list (只能接收一个参数,可迭代对象)
    list() 生成一个空的列表,等同于[]
    list(iterable) 用可迭代对象创建一个列表

列表的运算
    运算符:
    +   +=  *   *=
    + 用于拼接列表
    += 用于将右侧的 可迭代对象 的数据追加到原列表中
    * 用于生成重复的列表

列表的比较运算
运算符:
    < <= > >= == !=
比较规则
    同字符串比较规则完全相同

列表是可迭代对象

列表的in / not in 运算符
    判断一个元素是否存在于列表中,如果存在返回True,否则返回False
    in 和 not in 返回值相反

1.输入任意行文字,存于列表L中,当不输入任何内容直接回车后结束输入
    1)打印L列表中的内容
    2)计算一共输入多少行
    3)计算一共输入了多少字符

2.输入一个整数(代表树干的高度)
    打印如下:
    输入:
      *
     ***
      *
      *

3.写一个程序,任意输入一个整数,判断这个数是否为素数(质数)


4.算出100~1000以内的水仙花数
    水仙花数:153 = 1**3 + 5**3 + 3**3
153,370

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值