【Python】函数

Python函数 > »转到思维导图********> »转到博客园**************** 函数的返回值 函数内要想返回给调用者值 必须用关键字return 不写return:函数默认返回None def func(): print('hahaha') res = func() print(res) 只写return:return除了可以返回值之外,还可以直接结束整个函数的运行 只写return 返回的也是None(None就表示什么都没有) 只写return 返回的也是None(None就表示什么都没有) def func(): l = ['jason','egon','tank'] while True: for i in l: if i == 'egon': # 当i为egon的时候 直接结束函数运行 # break return # print('asdasdkljlsjadl') # 这一行代码拥有都不会运行 print(i) res = func() print(res) 写return None:跟上面的只写return是一样的 def func(): return None res = func() print(res) 写return返回一个值:这个值可以是python任意数据类型 def func(): return '123' def func1(): return [1,2,3] def func2(): return {'name':'jason'} def func3(): return (1,) def func4(): return {1,2,3,4,5} def func5(): return True print(func(),func1(),func2(),func3(),func4(),func5()) 写return返回多个值:return会自动将多个值以元组的形式返回给调用者 ...

2019年7月9日 · 3 分钟

【Python】文件操作/函数前戏

Python文件操作/函数前戏 »>转到思维导图********> »转到博客园**** 文件操作模式补充 "+" 表示可以同时读写某个文件 r+, 读写【可读,可写】 w+,写读【可读,可写】 a+, 写读【可读,可写】 文件内光标移动 一: read(3): 1. 文件打开方式为文本模式时,代表读取3个字符 2. 文件打开方式为b模式时,代表读取3个字节 二: 其余的文件内光标移动都是以字节为单位如seek,tell,truncate 注意: 1. seek有三种移动方式0,1,2,其中1和2必须在b模式下进行,但无论哪种模式,都是以bytes为单位移动的 2. truncate是截断文件,所以文件的打开方式必须可写,但是不能用w或w+等方式打开,因为那样直接清空文件了,所以truncate要在r+或a或a+等模式下测试效果 检测文件内容 with open(r'test01.txt','rb') as f: # 先将光标移动到文件末尾 f.seek(0,2) while True: res = f.readline() # 查看光标移动了多少位 bytes # print(f.tell()) if res: print("新增的文件内容:%s"%res.decode('utf-8')) # 说明有人操作当前文件 # else: # # 说明文件没有被任何人操作 # print('暂无其他人操作该文件') 截断文件 with open(r'test','a',encoding='utf-8') as f: f.truncate(6) # 接收的字节的长度 整型 # 保留0~6字节数 后面的全部删除(截断) 修改文件 ...

2019年7月8日 · 1 分钟

【Python】字符编码/文件操作

Python字符编码/文件操作 »>转到思维导图****> »转到博客园**** 字符编码 # 字符编码针对的是文字。 # 字符编码只跟文本文件有关。 # 文本编辑器的输入和输出是两个过程。 # 字符编码表就是字符与数字的对应关系 ASCII码表 用八位二进制表示一个英文字符 GBK 用2Bytes表示一个中文字符,还是用1Bytes表示一个英文字母。最多能表示65535个字符 Unicode万国码 统一用2Bytes表示所有的字符 1.浪费存储空间 2.IO次数增加,程序运行效率降低(致命) # 当内存中的unicode编码格式数据存到硬盘的时候,会按照utf-8编码 # 会将unicode的英文字符由原来的2Bytes变成1Bytes # 会将unicode中文字符由原来的2Bytes变成3Bytes # 现在的计算机内存都是unicode,硬盘都是utf-8 unicode的两个特点 1.用户在输入的时候,无论输什么字符都能够兼容万国字符 2.其他国家编码的数据由硬盘读到内存的时候unicode与其他各个国家的编码都有对应关系 # 数据由内存保存到硬盘 内存中的unicode格式二进制数字 >>>编码(encode)>>>utf-8格式的二进制数据 # 硬盘中的数据由硬盘读到内存 硬盘中的utf-8格式的二进制数据>>>解码(decode)>>>内存中unicode格式的二进制数据 # 保证不乱码在于文本文件以什么编码编的就以什么编码解 # python2将py文件按照文本文件读入解释器中默认使用ASCII码 # python3将py文件按照文本文件读入解释器中默认使用utf-8 # 文件头 # coding:utf-8 因为所有的编码都支持英文字符,所以文件头才能够正常生效 # python3中字符串默认就是unicode编码格式的二进制数 # pycharm终端用的是utf-8格式,windows终端采用的是gbk格式。 encode() # 将unicode编码成可以存储和传输的utf-8的二进制数据 # bytes类型 字节串类型 你就把它当成二进制数据即可 decode() # 将硬盘中的utf-8格式的二进制数据解码成unicode格式的二进制数据 x = '上' res1 = x.encode('gbk') # 将unicode编码成可以存储和传输的utf-8的二进制数据 print(res1) # b'\xe4\xb8\x8a' # bytes类型 字节串类型 你就把它当成二进制数据即可 res2 = res1.decode('gbk') # 将硬盘中的utf-8格式的二进制数据解码成unicode格式的二进制数据 print(res2) # 补充: # 你a他 # 1Bytes|1Bytes|1Bytes|1Bytes|1Bytes|1Bytes|1Bytes # 1+7bit|1+7bit|1+7bit|1+7bit|1+7bit|1+7bit|1+7bit 文件处理 ...

2019年7月5日 · 1 分钟

【Python】列表/字典/元组/集合

Python列表/字典/元组/集合 »>转到思维导图********> »转到博客园**** 列表list count()用来统计列表某个元素的个数 >>> l = [1,2,3,4,5,6,7] >>> res = l.count(8) >>> print(res) 0 clear()用来清除列表元素 >>> res = l.clear() >>> print(res) None >>> print(l) [] reverse()用来将列表反转 >>> l = [1,2,3,4,5,6,7] >>> print(id(l)) 2271674158920 >>> l.reverse() >>> print(l) [7, 6, 5, 4, 3, 2, 1] >>> print(id(l)) 2271674158920 sort()按升序将列表元素排序 >>> l.sort() >>> print(l) [1, 2, 3, 4, 5, 6, 7] >>> print(id(l)) 2271674158920 队列:先进先出 ...

2019年7月4日 · 4 分钟

【Python】数据类型

Python数据类型 »>转到思维导图> »转到博客园**** 整型(int) 用途:记录QQ号、手机号、身份证号等 定义:age = 18 常用操作+内置的方法 int只能转存数字的字符串,小数点都不行 进制转换 >>> print(int('1100',2)) # 二进制转十进制 0,1 12 >>> print(int('14',8)) # 八进制转十进制 0-7 12 >>> print(int('c',16)) # 十六进制转十进制 0-9 A-F 12 # int可以传第一个参数,表示的是第一个参数到底是什么进制 然后转成十进制 >>> print(bin(12)) # 10进制转二进制 0b1100 # 0b1100 0b表示后面的数字是二进制数 >>> print(oct(12)) # 10进制转八进制 0o14 # 0o14 0o表示后面的数字是八进制数 >>> print(hex(12)) # 10进制转16进制 0xc # 0xc 0x表示后面的数字是十六进制数 有序:但凡有索引的数据都是有序的 不可变:值改变的情况下,id一定变 浮点型(float) 用途:记录薪资、身高、体重等 定义: salary = 1.1 # salary = float(1.1) >>> res = float('1.11') >>> print(type(res)) <class 'float'> 有序:但凡有索引的数据都是有序的 ...

2019年7月3日 · 5 分钟

【Python】流程控制

Python流程控制 »>转到思维导图****> »转到博客园******** if判断 判断失误的对错,真假,是否可行 固定语法 if 条件: 代码1 代码2 代码3 代码4 ... python的缩进表示代码的归属 同一缩进的代码,称之为代码块 补充:布尔值位False数据由哪些:0,None,’ ‘,[ ],{ } 布尔值也可以直接用来判断 变量名也可以用来判断,因为变量名指向的值对应的就是True或False else 语法 # 不能单独使用,必须和if,while,for配合使用 if 条件: 代码1 代码2 代码3 代码4 ... else: # 不能单独使用,必须和if,while,for配合使用 代码1 代码2 代码3 代码4 ... if elif else 语法 :同一级别配合使用的时候,只会指向一个代码块 if 条件: 代码1 代码2 代码3 代码4 ... elif 条件: 代码1 代码2 代码3 代码4 ... else: # 不能单独使用,必须和if,while,for配合使用 代码1 代码2 代码3 代码4 ... 走了if就不会走elif else,走了elif就不会走else,if看到没走,走了else说明if elif都没走,都不满足if elif的条件 ...

2019年7月2日 · 1 分钟

【Python】输入输出/数据类型/运算符

Python输入输出/数据类型/运算符 »>转到思维导图********> »转到博客园******** Python的注释 单行注释# 和多行注释’’’ ’’'' 输入 python3中的input全部存成字符串类型 python2中需要认为告诉input输入的什么数据类型 name = input(‘please input»>:’) please input»>:jason Traceback (most recent call last): File “", line 1, in File “", line 1, in NameError: name ‘jason’ is not defined name = input(‘please input»>:’) please input»>:’egon’ name ’egon’ type(name) <type ‘str’> name = input(‘please input»>:’) please input»>:[1,2,3,4] name [1, 2, 3, 4] type(name) <type ’list’> raw_input()会统一存为字符串 name1 = raw_input(’»»»»»»»»»:’) :jason name1 ‘jason’ type(name1) <type ‘str’> name1 = raw_input(’»»»»»»»»»:’) :[1,2,3,4,5] name1 ‘[1,2,3,4,5]’ type(name1) <type ‘str’> ...

2019年7月1日 · 3 分钟

【Python】计算机发展史/变量/垃圾回收机制

Python计算机发展史/变量/垃圾回收机制 »>转到思维导图********> »转到博客园******** ****编程语言发展史 机器语言 站在奴隶主的角度说奴隶主的话 1.编译型(类似于谷歌翻译) 2.解释型(类似于同声传译) PS:一次翻译之后,就可以拿着翻译之后的结果多次运行 汇编语言 用简单的英文标签来表示二进制数,直接操作硬件 优点:开发效率高于机器语言 缺点:执行效率较机器语言低 高级语言 站在奴隶主的角度说奴隶主的话 1.编译型(类似于谷歌翻译) 一次翻译之后,就可以拿着翻译之后的结果多次运行 编译的过程需要用到编译器 优点:执行效率高 缺点:开发效率低 2.解释型(类似于同声传译) 一行一行的翻译(读一行翻译一行) 解释的过程需要用到解释器 优点:开发效率高 缺点:执行效率低 PS: 学习难度:高级语言»>汇编语言»>机器语言 执行效率:机器语言»>汇编语言»>高级语言 开发效率:机器语言»>汇编语言»>高级语言 Python python是解释型语言 1.胶水语言 2.调包侠 python解释器,环境变量配置,多版本共存 在IT行业不要贸然尝试用最新版本的软件!!! 第一个Python程序 1.交互式 优点:输入内容立刻就有对应的返回结果 缺点:无法永久保存数据 2.命令行(文件形式) 优点:可以永久保存数据 缺点:暂时来看运行该文件有点麻烦 PS:文件后缀名 仅仅是给人看的 你所认为的不同的文件后缀有不同的功能那是程序员自己写的 python文件默认的后缀名就是.py结尾 运行一个py文件需要走的步骤(*) 1.将python解释器代码从硬盘督导内存(就等价于双击了word图标) 2.将你写好的py文件由应哦按读到内存(就等价于你双击了一个word文档) 3.解释器解释读取py文件中的内容,解释成计算机能够识别的语句(如果是一个普通文本文件,仅仅只会将文件内容展示到屏幕上给用户查看,不会检测翻译文件内容) PS:Pyhon解释器与普通文本编辑器前面两步是一毛一样的,仅仅第三步不一样(一个是解释语法,一个是文本展示) 变量 1.什么是变量 量:衡量/记录事物的状态/特征 变:状态/特征是可以变化的 2.为什么要有变量? 帮助你记录保存事物的某种状态或特征 3.变量的定义 1.只能包含数字,字母,下划线 2.数字不能开头 3.关键字不能作为变量名 变量必须先定义后调用(使用),变量名不要加引号 4.变量额三要素 1. id():返回的是一串数字 2. type():返回的是该变量对应的主句的类型 3. value:该变量指向的内存当中数据的值 ...

2019年6月28日 · 1 分钟

【Python】计算机组成原理/编程语言

Python是一门编程语言 »>转到思维导图****** »>转到**博客园**** 编程 1.什么是编程 编写程序,谁来编写,人来编写。 将自己的思维逻辑和想法通过计算机能够识别的语言写下,告诉计算机按照你的思维逻辑去帮你干活。 编程的最终结果就是一丢文件。 2.为什么要编程 让计算机能够按照你的思维逻辑去工作,解放人力!!! 语言 汉语,日语,英语,法语,德育 事物与事物之间沟通交流的媒介 操作系统:(windows,linux,unix…) 1.操作系统是帮你操作计算机硬件的,它帮你封装好了一系列操作硬件的方法。 2.程序员只需要按照操作系统提供的操作方法即可简介操作硬件。 3.一套完整的计算机系统由一下三部分组成 1.应用程序 2.操作系统(中间人) 3.计算机硬件 ps: 1.程序员开发的程序都叫做应用程序。 2.操作系统也是应用程序,但是它针对的是计算机硬件。 操作系统也是一款应用软件,但是它是针对计算机硬件的,将复杂丑陋的操作封装起来,暴露给用户简单快捷的操作接口,帮助你协调,管理,调度计算机各个硬件。 计算机五大组成部分 1.控制器 2.运算器 控制器+运算器=计算机中央处理器(CPU) 3.存储器 :计算机存储系统 内存 基于电工作的,通电数据正常读取,一旦断电数据即可丢失。 优点:读取速度快 缺点:断电数据丢失 外存 优点:能够永久保存数据 缺点:读取速度慢 4.输入设备 键盘,鼠标,触摸屏 5.输出设备 显示器,音响,打印机 ps: 输入设备也称input 输出设备也称output 存储器也可以叫着IO设备 计算机三大核心组件 1.CPU :大脑 2.内存 :短期记忆 3.硬盘 :永远不会消失的本子 计算机是基于电工作的,而电信号只有高低电频两种状态0和1,计算机里面存储的都是0101的二进制数据。 CPU工作流程:选取内存中读取命令,将命令解析翻译成自己能够对应上的操作步骤,控制硬件执命令。 简单指令集 复杂指令集 x86架构 CPU到内存中获取数据最多读32位 64位 32位 64位向下兼容32位的软件 而32位不能够兼容64的软件 存储器 寄存器 :cpu下一步即将要用到的数据(容量小) 高速缓存 :将经常需要用到的容量比较小的数据存储在高速缓存 内存 :cpu获取数据的主力还是内存 ...

2019年6月27日 · 1 分钟