快速入门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学习之asyncore模块用法实例教程
Sep 29 Python
python中反射用法实例
Mar 27 Python
如何高效使用Python字典的方法详解
Aug 31 Python
利用python实现微信头像加红色数字功能
Mar 26 Python
python检测文件夹变化,并拷贝有更新的文件到对应目录的方法
Oct 17 Python
python 高效去重复 支持GB级别大文件的示例代码
Nov 08 Python
pytorch permute维度转换方法
Dec 14 Python
pandas DataFrame的修改方法(值、列、索引)
Aug 02 Python
python关于调用函数外的变量实例
Dec 26 Python
python_array[0][0]与array[0,0]的区别详解
Feb 18 Python
Pytorch mask-rcnn 实现细节分享
Jun 24 Python
python 实现百度网盘非会员上传超过500个文件的方法
Jan 07 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 文件上传进度条的两种实现方法的代码
2007/11/25 PHP
关于访问控制的一首PHP面试题(对属性或方法的访问控制)
2012/09/13 PHP
php跨域cookie共享使用方法
2014/02/20 PHP
php获取数组元素中头一个数组元素值的实现方法
2014/12/20 PHP
用Laravel轻松处理千万级数据的方法实现
2020/12/25 PHP
js 变量类型转换常用函数与代码[比较全]
2009/12/01 Javascript
Knockout visible绑定使用方法
2013/11/15 Javascript
table行随鼠标移动变色示例
2014/05/07 Javascript
JavaScript的各种常见函数定义方法
2014/09/16 Javascript
jquery动态分页效果堪比时光网
2014/09/25 Javascript
基于javascript实现简单计算器功能
2016/01/03 Javascript
jQuery实现简单的DIV拖动效果
2016/02/19 Javascript
浅谈Vue的基本应用
2016/12/27 Javascript
python爬取安居客二手房网站数据(实例讲解)
2017/10/19 Javascript
JS实现的文字间歇循环滚动效果完整示例
2018/02/13 Javascript
在vue中获取token,并将token写进header的方法
2018/09/26 Javascript
JS script脚本中async和defer区别详解
2020/06/24 Javascript
基于vue-simple-uploader封装文件分片上传、秒传及断点续传的全局上传插件功能
2021/02/23 Vue.js
[01:30]2016国际邀请赛中国区预选赛神秘商店火爆开启
2016/06/26 DOTA
在Python中使用pngquant压缩png图片的教程
2015/04/09 Python
python批量读取txt文件为DataFrame的方法
2018/04/03 Python
Python列表推导式与生成器用法分析
2018/08/02 Python
Django 迁移、操作数据库的方法
2019/08/02 Python
python脚本第一行如何写
2020/08/30 Python
Python datetime 如何处理时区信息
2020/09/02 Python
使用CSS3编写类似iOS中的复选框及带开关的按钮
2016/04/11 HTML / CSS
AT&T Wireless:手机、无限数据计划和配件
2018/06/03 全球购物
初一科学教学反思
2014/01/27 职场文书
学校安全检查制度
2014/01/27 职场文书
小学毕业感言50字
2014/02/16 职场文书
春风行动实施方案
2014/03/28 职场文书
服装设计专业自荐信
2014/06/17 职场文书
司考复习计划
2015/01/19 职场文书
2017新年晚会开幕词
2016/03/03 职场文书
Java Spring 控制反转(IOC)容器详解
2021/10/05 Java/Android
SpringBoot使用AOP实现统计全局接口访问次数详解
2022/06/16 Java/Android