【Python基础总结】

Python基础总结

1.Python 标识符

在 Python 里,标识符由字母、数字、下划线组成。
在 Python 中,所有标识符可以包括英文、数字以及下划线(_),但不能以数字开头。
Python 中的标识符是区分大小写的。以下划线开头的标识符是有特殊意义的。

2.Python 保留字符

保留字不能用作常数或变数,或任何其他标识符名称。所有 Python 的关键字只包含小写字母。
and exec not assert finally or
break for pass class from print
continue global raise def if return
del import try elif in while
else is with except lambda yield

3.行和缩进

学习 Python 与其他语言最大的区别就是,Python 的代码块不使用大括号 {} 来控制类,函数以及其他逻辑判断。python 最具特色的就是用缩进来写模块。

缩进的空白数量是可变的,但是所有代码块语句必须包含相同的缩进空白数量,这个必须严格执行。

4.标准数据类型

在 python 中,strings, tuples, 和 numbers 是不可更改的对象,而 list,dict 等则是可以修改的对象。
Python有五个标准的数据类型:

  • Numbers(数字)
  • String(字符串)
  • List(列表)
  • Tuple(元组)
  • Dictionary(字典)

1.Python列表
列表用 [ ] 标识,是 python 最通用的复合数据类型。列表可以完成大多数集合类的数据结构实现。它支持字符,数字,字符串甚至可以包含列表(即嵌套)。
例:lista=["张三","李四","王五","赵六"]
2.Python元组
元组是另一个数据类型,类似于 List(列表)。
元组用 () 标识。内部元素用逗号隔开。但是元组不能二次赋值,不支持修改,相当于只读列表。
例:tuplea=("张三","李四","王五","赵六")
3.Python 字典
字典(dictionary)是除列表以外python之中最灵活的内置数据结构类型。列表是有序的对象集合,字典是无序的对象集合。
字典用{ }标识。字典由索引(key)和它对应的值value组成。无序;键值对形式;键不可以重复,一般使用字符串作为键。
例:dicta={"name":"zhangsan","age":18,"hobby":"playBall"}
————————————————

5.数字类型

  • int(有符号整型)
  • long(长整型,也可以代表八进制和十六进制)
  • float(浮点型)
  • complex(复数)

1.长整型也可以使用小写 l,但是还是建议您使用大写 L,避免与数字 1 混淆。Python使用 L 来显示长整型。
2.Python 还支持复数,复数由实数部分和虚数部分构成,可以用 a + bj,或者 complex(a,b) 表示, 复数的实部 a 和虚部 b 都是浮点型。

6.Python字符串

字符串或串(String)是由数字、字母、下划线组成的一串字符。
它是编程语言中表示文本的数据类型。
python的字串列表有2种取值顺序:

  • 从左到右索引默认0开始的,最大范围是字符串长度少1
    从右到左索引默认-1开始的,最大范围是字符串开头

a b c d e f
0 1 2 3 4 5
-6 -5 -4 -3 -2 -1

7.Python运算符

+加 - 两个对象相加
-减 - 得到负数或是一个数减去另一个数
- 两个数相乘或是返回一个被重复若干次的字符串 a
/ 除 - x除以y
% 取余 - 返回除法的余数
** - 返回x的y次幂 10
*20为10的20次方
// 取整除 - 返回商的整数部分(向下取整)
例: 9//2——4 -9//2—— -5
& 按位与运算符:参与运算的两个值,如果两个相应位都为1,则该位的结果为1,否则为0
| 按位或运算符:只要对应的二个二进位有一个为1时,结果位就为1
^ 按位异或运算符:当两对应的二进位相异时,结果为1
~ 按位取反运算符:对数据的每个二进制位取反,即把1变为0,把0变为1
<< 左移动运算符:运算数的各二进位全部左移若干位,由 << 右边的数字指定了移动的位数,高位丢弃,低位补0。 a << 2 输出结果 240 ,二进制解释: 1111 0000(a = 0011 1100)
“>>” 右移动运算符:把">>“左边的运算数的各二进位全部右移若干位,>> 右边的数字指定了移动的位数 a >> 2 输出结果 15 ,二进制解释: 0000 1111
and x and y 布尔"与” - 如果 x 为 False,x and y 返回 False,否则它返回 y 的计算值。 (10 and 20) 返回 20。
or x or y 布尔"或" - 如果 x 是非 0,它返回 x 的计算值,否则它返回 y 的计算值。 (10 or 20) 返回 10。
not not x 布尔"非" - 如果 x 为 True,返回 False 。如果 x 为 False,它返回 True。

8.基本语句

  • 选择结构:if……elif…………else

score =int (input(“请输入学生成绩:(分)”))#强制类型转化为int型
if score>=90:
print(“优秀”)
elif score>=80:
print(“良好”)
elif score>=60:
print(“及格”)
else:
print(“差”)
————————————————

  • 循环结构:for^^in;while;Python 循环嵌套

例:1.#计算0–100的和
sum=0
for x in range(101):#range(101)可以生成0-100的整数序列
sum=sum+x
print(sum)
2.#计算100内所有奇数的和
sum=0
n=99
while n>0:
sum=sum+n
n=n-2
print(sum)
————————————————

循环控制语句
break 语句 在语句块执行过程中终止循环,并且跳出整个循环
continue 语句 在语句块执行过程中终止当前循环,跳出该次循环,执行下一次循环。
pass 语句 pass是空语句,是为了保持程序结构的完整性。

9.Python 日期和时间

Python 程序能用很多方式处理日期和时间,转换日期格式是一个常见的功能。
Python 提供了一个 time 和 calendar 模块可以用于格式化日期和时间。
时间间隔是以秒为单位的浮点小数。
每个时间戳都以自从1970年1月1日午夜(历元)经过了多长时间来表示。
Python 的 time 模块下有很多函数可以转换常见日期格式。如函数time.time()用于获取当前时间戳。

import time
1.获取当前时间
localtime = time.localtime(time.time())
print “本地时间为 :”, localtime
2.获取格式化的时间
localtime = time.asctime( time.localtime(time.time()) )
print “本地时间为 :”, localtime
3.格式化日期
time.strftime(format[, t])
————————————————

import calendar
4.获取某月日历
cal = calendar.month(2016, 1)
print “以下输出2016年1月份的日历:”
print cal

10.Python 函数

1.常见内置函数
abs(a):求绝对值
max(list)/min(list)
sum(list)
sorted(list):排序
len(list):获取长度
divmod(a,b):获取商和余数
pow(a,b):获取乘方数
round(a,b):获取指定位数的小数。a代表浮点数,b代表要保留的数。例如:round(3.1415926,2)——3.14
range(a,b):生成一个a到b的序列,左闭右开。
2.自定义函数
在Python中,定义一个函数要使用def语句,依次写出函数名、括号、括号中的参数和冒号:,然后,在缩进块中编写函数体,函数的返回值用return语句返回。
3.调用函数
Python内置了很多有用的函数,我们可以直接调用。
我们也可以调用自己的自定义函数

#实例–榨汁机
def juicer(f1):
print(“榨汁机开始工作,,,”)
juice=f1+“汁”
return juice
j=juicer(“苹果”)
print(“榨出一杯:”,j)
————————————————
def getMax(a,b,c):
r=max([a,b,c])#在函数中调用函数
return r
d=getMax(23,56,34)
print(d)

11.Python 模块

Python 模块(Module),是一个 Python 文件,以 .py 结尾,包含了 Python 对象定义和Python语句。模块能定义函数,类和变量,模块里也能包含可执行的代码。
模块是Python 中的最高级别组织单元,它将程序代码和数据封装起来以便重复使用。模块中包含了实现某一业务的多个函数和属性。可以说,模块是一个实现某种业务的工具包。 要使用工具包中的工具(一般是函数),就需要导入这个模块。模块也称包或者库。
模块分为内置模块和第三方模块。

  • 1.引入模块,本质是在一个python文件中引入另一个python文件
    import 模块名
    2.引入的模块在文档中还可以设置别名 import 模块名 as 别名
  • from…import 语句 Python 的 from 语句让你从模块中导入一个指定的部分到当前命名空间中。例如,要导入模块 fib 的 fibonacci 函数,使用如下语句:from fib import fibonacci。
  • 在调用模块中的函数时,必须这样引用:模块名.函数名

#模块___引入导入模块

#import 模块名
#from 模块名 import 子模块
import random#引入随机数模块
#模块名.函数名()
r1=random.randint(1,6)#生成指定范围随机整数
r2=random.uniform(1,6)#生成指定范围随机浮点数
print(r2)

12.Python 文件I/O

  • 1.input函数: input 可以接收一个Python表达式作为输入,并将运算结果返回。

str = input(“请输入:”)
print "你输入的内容是: ", str
————————————————
请输入:[x*5 for x in range(2,10,2)]
你输入的内容是: [10, 20, 30, 40]

2.不同模式打开文件

模式描述
r以只读方式打开文件。文件的指针将会放在文件的开头。这是默认模式。
rb以二进制格式打开一个文件用于只读。文件指针将会放在文件的开头。这是默认模式。一般用于非文本文件如图片等。
r+打开一个文件用于读写。文件指针将会放在文件的开头。
rb+以二进制格式打开一个文件用于读写。文件指针将会放在文件的开头。一般用于非文本文件如图片等。
w打开一个文件只用于写入。如果该文件已存在则打开文件,并从开头开始编辑,即原有内容会被删除。如果该文件不存在,创建新文件。
wb以二进制格式打开一个文件只用于写入。如果该文件已存在则打开文件,并从开头开始编辑,即原有内容会被删除。如果该文件不存在,创建新文件。一般用于非文本文件如图片等。
w+打开一个文件用于读写。如果该文件已存在则打开文件,并从开头开始编辑,即原有内容会被删除。如果该文件不存在,创建新文件。
wb+以二进制格式打开一个文件用于读写。如果该文件已存在则打开文件,并从开头开始编辑,即原有内容会被删除。如果该文件不存在,创建新文件。一般用于非文本文件如图片等。
a打开一个文件用于追加。如果该文件已存在,文件指针将会放在文件的结尾。也就是说,新的内容将会被写入到已有内容之后。如果该文件不存在,创建新文件进行写入。
ab以二进制格式打开一个文件用于追加。如果该文件已存在,文件指针将会放在文件的结尾。也就是说,新的内容将会被写入到已有内容之后。如果该文件不存在,创建新文件进行写入。
a+打开一个文件用于读写。如果该文件已存在,文件指针将会放在文件的结尾。文件打开时会是追加模式。如果该文件不存在,创建新文件用于读写。
ab+以二进制格式打开一个文件用于追加。如果该文件已存在,文件指针将会放在文件的结尾。如果该文件不存在,创建新文件用于读写。
  • 3.读写文件步骤

打开文件:
文件对象=open(文件路径名,访问模式)
处理文件:
读文件或者写文件
关闭文件:
文件对象.close()

#打开一个文件
fo = open(“foo.txt”, “r+”)
str = fo.read(10)
print "读取的字符串是 : ", str
#关闭打开的文件
fo.close()
————————————————
读取的字符串是 : www.runoob

  • 4.File对象的属性
属性描述
file.closed返回true如果文件已被关闭,否则返回false。
file.mode返回被打开文件的访问模式。
file.name返回文件的名称。
file.softspace如果用print输出后,必须跟一个空格符,则返回false。否则返回true。

#打开一个文件
fo = open(“foo.txt”, “w”)
print "文件名: ", fo.name
print "是否已关闭 : ", fo.closed
print "访问模式 : ", fo.mode
print "末尾是否强制加空格 : ", fo.softspace
————————————————
文件名: foo.txt
是否已关闭 : False
访问模式 : w
末尾是否强制加空格 : 0

13.Python 异常处理

  • 1.捕获异常 当异常发生时,获取异常信息并作相应处理,避免程序崩溃

只能捕获运行时异常,如果代码本身不能正常运行无法捕获
try···except
try:
可能出现异常的代码
except Exception as e:
出现异常时执行的代码(Exception 捕获的错误类型 e保存具体错误内容)

lista=[15,15,45,8,0,98,8,14]
for s in lista:
try:
r=10/s
print®
except Exception as e:#Exception 捕获的错误类型 e保存具体错误内容
print(“出现错误:”,e)
————————————————
出现错误: division by zero

  • 2.else和finally语句
    try:
    可能出现异常的代码
    except Exception as e:
    出现异常时执行的代码
    else:
    没有出现异常时执行的代码
    finally
    无论是否出现异常,都会执行
lista=[15,15,45,8,0,98,8,14]

for s in lista:
    try:
        r=10/s
        print(r)
    except Exception as e:#Exception 捕获的错误类型  e保存具体错误内容
        print("出现错误:",e)
    else:
        print("正常!")
    finally:
        print("----执行完毕!")

  • 3.自定义异常
    创建一个异常对象
exp=Exception("性别只能是男或者女!")#创建一个异常对象
sex=input("请输入您的性别(男、女)")
if sex=="男"or sex=="女":
    print("您输入的性别:",sex)
else:
    print("您输入的性别有误!")
    raise exp

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值