快速入门python学习笔记


Posted in Python onDecember 06, 2017

本篇不是教给大家如何去学习python,有需要详细深入学习的朋友可以参阅:Python基础语言学习笔记总结(精华)本文通过一周快速学习python入门知识总计了学习笔记和心得,分享给大家。

##一:语法元素

###1.注释,变量,空格的使用

注释

单行注释以#开头,多行注释以''开头和结尾

变量

变量前面不需要声明数据类型,但是必须赋值

变量命名可以使用大小写字母,数字和下划线的组合,但是首字母只能是大小写字母或者下划线,不能使用空格

中文等非字母符号也可以作为名字

空格的使用

表示缩进关系的空格不可改变

空格不能将一个命名分割

除了以上两条外,程序可以任意使用空格增加程序的可读性

###2.输入函数,输出函数

输入函数

input()函数从控制台获取用户的输入,使用方法为变量=input(提示信息)

获得用户输入以字符串形式保存在变量中 如val="28C",则val[-1]表示最后一个字符"C" 前两个字符组成的子串可以用 val[0:2]表示,表示从一个[0,2)的区间

输出函数

print("文本") 文本里面的%f数据为后面引号后面的值 例如print("the value of a is %f"%a)

###3.分支语句,循环语句

分支语句 分支语句通过缩进关系表示分支的所属关系

if <条件一>: <表达式一> elif <条件二>: <表达式二> else : <表达式三>

循环语句 循环语句根据判断条件或者计数条件确定一段程序的运行次数 例如: 

for i in range (10):<表达式组>

上述表达式组将会运行10次 for循环固定循环次数,不会因为变量改变而改变 注意循环语句中的缩进 while与C一样,也有break和continue ###4.保留字in,同步赋值

保留字in

判断左侧内容是否在右侧集合中 例如val[-1] in ['c','C'] 如果成立则为true,若不成立则为false

同步复制 同时给多个变量复制,即先运算右侧所有表达式,然后同时将表达式结果赋值给左侧 如将x和y交换数值x,y=y,x

###5.import与def以及turtle库

import import可以引入外部库

def 可以定义自己的函数 注意def里面所有缩进都是def里面的函数

引用库函数:from math import *或者import math,但是在这种函数后需要用math.函数()来使用函数

import turtle
def draw(rad,angle,len,neckrad):
for i in range(len):
turtle.circle(rad,angle)//画圆的半径与角度
turtle.circle(-rad,angle)
turtle.circle(rad,angle/2)
turtle.fd(rad)//画直线的长度
turtle.circle(neckrad+1,180)
turtle.fd(rad*2/3) 
def main ():
turtle.setup(1300,800,0,0)//启动窗口的宽与高与左上角的坐标,向下为y轴,右方为x轴
pythonsize=30
turtle.pensize(pythonsize)//运行轨迹的宽度(像素)
turtle.pencolor("blue")//(轨迹颜色)
turtle.seth(-40)//开始运动的方向
draw(40,80,5,pythonsize/2)
main()

turtle 画五角星

from turtle import Turtle
p=Turtle()
p.speed(3)
p.pensize(5)
p.color("black","yellow")
p.fillcolor("red")
p.begin_fill()
for i in range (5):
p.forward(200)
p.right(144)
p.end_fill()

###6.eval函数与repr函数

将字符串当成有效Python表达式来求值,并返回计算结果

x = 1
eval('x+1')
eval('x==1')

repr函数,它能够将Python的变量和表达式转换为字符串表示

repr(x==1)
repr(x+1)

##二.数据类型

1.整数类型(无数值范围限制)

十进制

0X,0x开头表示16进制数

0b,0B开头表示2进制数

0o,0O开头表示8进制数

浮点数 浮点数可以用科学计数法,使用e或者E作为幂的符号,1️以10为基数,例如2e-10表示2的-10次方

复数类型 z=a+bj,a为实数部分,b为虚数部分,叙述部分用j或者J标识,同时a与b同位浮点类型 例如z=12.3+4.2j 对于复数z,可以用z.real和z.imag获得实数与虚数部分

整数->浮点数->复数 不同数字类型之间存在混合运算,运算结果为最宽类型 三种类型可以相互转换 函数 : int(4.5)=4 float(4)=4.0 complex(4)=4+0j

可以通过type(x)获得x的类型,适用于所有类型

运算符或函数 作用
x//y 表示x/y商的整数部分
x%y 表示x/y商的余数部分
x**y 获得x的y次幂
divmod(x,y) 同时返回求商和余
pow(x,y) x的y次幂

字符串类型

字符串是用双引号或单引号括起来的一个或多个字符

字符串可以保存在变量中,也可以单独存在

如果要输出引号在前面加一个转义字符\

字符串之间可以进行+与*操作

len(str)函数能返回str字符串的长度

函数名称 作用
string.upper() 将字符串中字母大学
string.lower() 字母变为小写
string.capitalize() 首字母大写
string.strip() 去掉两边的空格及去掉指定字符
string.split() 按指定字符分割字符串为数组
string.isdigit() 判断是否是数字类型
string.find() 搜索指定字符串
string.replace() 字符串替换

遍历字符串的每个字符 for <var> in <string>:

元组类型

元组包含多个元素,元素之间用逗号分开 t=123,456,"hello"

元组可以是空的 t=()

元组外侧可以有括号也可以不加

元组的三个特点

元组中元素可以是不同类型 `t=12,32,("hello","world")

可以通过索引访问元组中的元素 例如t[1]

元组定义后不能修改也不能删除

与字符串相似可以通过索引区间来访问元组中部分元素如t[1:] 同样,元组之见可以使用+和*运算符进行运算

random与math库 random可以生成随机数以及随机生成列表,随机取数等 math库存数学函数

##python语法 ###异常处理

tre:
<body>
except <ErrorType1>:
<handler1>
except <ErrorType2>:
<handler2>
else :
<process_else>
finally:

先执行try里面的语句,如果报错,则执行except里面的异常处理语句 如果没有异常则继续处理else里面的语句 无论是否异常继续运行finally里面的语句

###布尔表达式

and相当于&&

or相当于|

not相当于!

###函数 def <函数名> (<参数>): `

不需要返回类型,但是能够return任意类型的参数

无返回值返回return None

函数可以返回多个值,用逗号隔开

###文件操作

打开文件 open()函数 变量=open(磁盘文件名称,打开方式) |操作名称|含义| |:---:|:---| | r|只读,如果文件不存在,则输出错误 | |w|只写,如果文件不存在,则创建文件| |a|附加到文件末尾| |rb|只读二进制文件,如果文件不存在,则输出错误| |wb|只写二进制文件,如果文件不存在,则自动创建文件| |ab|附加到二进制文件末尾| |r+|读写| 示例代码:

infile=open("number.dat","r")

文件读取 |操作名称|含义| |:---:|:---| |read()|返回值为包含整个文件内容的一个字符串| |readline()|返回值为文件下一行内容的字符串| |readlines()|返回值为整个文件内容的列表,每行是️以换行符为结尾的一行字符串|

示例代码

输出文件的文本

def main()
fname = input("Enter filename:")
infile = open(fname,"r")
data=infile.read()
print(data)
main()

文件写入 |操作名称|含义| |:---:|:---| |write()|把含有文本数据或二进制数据块的字符串写入文件| |writelines()|针对列表操作,接受一个字符串列表作为参数,将他们写入文件,并且行结束符不会被自动加入| 示例代码

outfile=open("outfile.txt","w")
outfile.writeliens(["hello"," ","world"])
outfile.close()
infile=open("outfile.txt","r")
infile.read()
Python 相关文章推荐
python实现simhash算法实例
Apr 25 Python
Python3里的super()和__class__使用介绍
Apr 23 Python
Python的Django框架中的Context使用
Jul 15 Python
Python之ReportLab绘制条形码和二维码的实例
Jan 15 Python
对dataframe进行列相加,行相加的实例
Jun 08 Python
python寻找list中最大值、最小值并返回其所在位置的方法
Jun 27 Python
处理python中多线程与多进程中的数据共享问题
Jul 28 Python
浅谈Python 敏感词过滤的实现
Aug 15 Python
python实现简单俄罗斯方块
Mar 13 Python
利用pandas向一个csv文件追加写入数据的实现示例
Apr 23 Python
python os模块在系统管理中的应用
Jun 22 Python
这样写python注释让代码更加的优雅
Jun 02 Python
Python中django学习心得
Dec 06 #Python
Python标准库inspect的具体使用方法
Dec 06 #Python
读取本地json文件,解析json(实例讲解)
Dec 06 #Python
Python语言描述最大连续子序列和
Dec 05 #Python
python matplotlib坐标轴设置的方法
Dec 05 #Python
详解K-means算法在Python中的实现
Dec 05 #Python
Python实现字符串匹配算法代码示例
Dec 05 #Python
You might like
PHP 图像尺寸调整代码
2010/05/26 PHP
php 判断网页是否是utf8编码的方法
2014/06/06 PHP
php中socket通信机制实例详解
2015/01/03 PHP
thinkphp5.1 文件引入路径问题及注意事项
2018/06/13 PHP
(currentStyle)javascript为何有时用style得不到已设定的CSS的属性
2007/08/15 Javascript
XHTML下,JS浮动代码失效的问题
2009/11/12 Javascript
jQuery ctrl+Enter shift+Enter实现代码
2010/02/07 Javascript
js输出列表实现代码
2010/09/12 Javascript
JavaScript Title、alt提示(Tips)实现源码解读
2010/12/12 Javascript
用jquery实现的模拟QQ邮箱里的收件人选取及其他效果(一)
2011/01/06 Javascript
dojo随手记 gird组件引用
2011/02/24 Javascript
JS获取URL中参数值(QueryString)的4种方法分享
2014/04/12 Javascript
javascript用正则表达式过滤空格的实现代码
2016/06/14 Javascript
D3.js实现柱状图的方法详解
2016/09/21 Javascript
微信JS-SDK自定义分享功能实例详解【分享给朋友/分享到朋友圈】
2016/11/25 Javascript
Bootstrap的popover(弹出框)2秒后定时消失的实现代码
2017/02/27 Javascript
Bootstrap弹出框之自定义悬停框标题、内容和样式示例代码
2017/07/11 Javascript
详谈innerHTML innerText的使用和区别
2017/08/18 Javascript
Vue2.0+Vux搭建一个完整的移动webApp项目的示例
2019/03/19 Javascript
vue全局自定义指令-元素拖拽的实现代码
2019/04/14 Javascript
详解Vue的ref特性的使用
2020/01/24 Javascript
微信小程序订阅消息(java后端实现)开发
2020/06/01 Javascript
[01:00]DOTA2 store: Collection of Artisan's Wonders
2015/08/12 DOTA
[01:03:03]VP vs Mineski 2018国际邀请赛淘汰赛BO3 第一场 8.22
2018/08/23 DOTA
[01:11:37]完美世界DOTA2联赛PWL S2 SZ vs FTD.C 第一场 11.19
2020/11/19 DOTA
纯用NumPy实现神经网络的示例代码
2018/10/24 Python
python3安装speech语音模块的方法
2018/12/24 Python
使用 Python 玩转 GitHub 的贡献板(推荐)
2019/04/04 Python
浅谈numpy中np.array()与np.asarray的区别以及.tolist
2020/06/03 Python
浅谈CSS3鼠标移入图片动态提示效果(transform)
2017/11/06 HTML / CSS
美国和加拿大房车出售在线分类广告:RVT.com
2018/04/23 全球购物
生产车间主任的个人自我鉴定
2013/10/25 职场文书
财务管理职业生涯规划书
2014/02/26 职场文书
物业品质提升方案
2014/06/08 职场文书
Go中的条件语句Switch示例详解
2021/08/23 Golang
js不常见操作运算符总结
2021/11/20 Javascript