赞
踩
-
- 1.传递参数与参数类型
- 类型:位置参数 关键词参数
- def trapezoid_area(base_up, base_down, height):
- return 1/2 * (base_up + base_down) * height
- print(trapezoid_area(1,2,3))
- 备注:像这样传递的参数对应着他们的位置叫位置参数
- def trapezoid_area(base_up=1, base_down=2, height=3):
- return 1/2 * (base_up + base_down) * height
- print(trapezoid_area())
- 备注:更直观的,在调用函数的时候,每个参数后面赋予一个我们想要传入的值,这样以名称作为一一对应的参数传入方桑被称为关键词参数
- def flashlight (battery1, battery2):
- return 'Light!'
- nanfu1 = 600
- nanfu2 = 600
- print(flashlight(nanfu1, nanfu2))
- 备注:battery1,battery2是形式参数,真正需要的参数还是南孚1,南孚2,这次也是位置参数传递 ,所以名字不同不影响参数传递
- def trapezoid_area(base_up, base_down, height=3):
- return 1/2 * (base_up + base_down) * height
- print(trapezoid_area(1,2))
- 备注:设置默认值传递参数,这样高总是3,记住要在定义的时候就去设置默认值
- print(' *',' * * ',' * * *',' |')
- print(' *',' * * ','* * *',' |',sep='\n')
- 备注: print的可选参数sep(意思是每个打印的结果以...分开)默认值是空格,但我们将重新传入‘/n’换行的意思,即使是以换行切割。
- //2.open函数和write函数的使用
- file = open('/Users/Hou/Desktop/text.txt','w')
- file.write('Hello World')
- 备注:open函数里面要有完整的路径,文件名,和打开文件的方式
-
- with open('D:\我的喜欢软件\Desktop\we.txt','w') as file:
- file.write('奋斗成就更好的你')
- #使用文件读写操作
- 3.成员变量和身份运算符,函数append的使用
- x=['y','z','q','g']
- x.append('new song')
- print('y' in x)
- //定义一个数组,放了很多参数,append是添加一个新的并且默认附加在最后
- //结果是ture
- the_Eddie = 'Eddie'
- name = 'Eddie'
- the_Eddie == name
- print(the_Eddie is name)
- //is 是归属
- 备注:成员变量的关键字是in 身份运算符的关键字是is
- 前者是这个字符串是否在这一行里面 后者是是否
- 4.for循环的使用以及range函数的使用
- for every_letter in 'Hello world':
- print(every_letter)
- //循环字符串
- for num in range(1,11):
- print(num)
- //循环数字
- r=range(10)
- print(list(r))
- //也可以使用list来列出这些1.一个参数输出1-10
- r=range(2,15)
- print(list(r))
- //也可以使用list列出这些2.两个参数 (开始,结束)则这为2-14 3.三个参数 (开始,结束,step字长) 输出这些数字,间隔多少
- 5.打包python程序
- //终端里面对号处选择command prompt然后执行下面的命令
- //下载打包的东西
- pip install pyinstaller -i https://pypi.douban.com/simple
- //执行这条命令让他变成exe文件
- pyinstaller -F try.py
- //执行这个程序 可以从window里面打开也可以进入dist目录下面执行这个文件面
- 例子 :try.py
- //就可以直接俄执行这个程序
- 6.列表与list函数的使用index函数与list类对象的常用方法(insert,add)
- 变量可以存储一个变量,而列表是一个'大容器'可以储存N多个元素,程序可以方便的对这些数据进行整体操作
- 列表相当于其他语言中的数组
- 例子:
- lst_a=['hello','1','name']
- print(id(lst_a))
- print(type(lst_a))
- print(lst_a)
- //列表里面存放很多不一样东西,然后输出id号,类型和列表的内容。
- print(lst)
-
- //列表的创建方式
- #第一种创建方法,使用[]
- list_2=list(['hello','worl',87])
- #第二种创建方式,使用内置函数list()
-
- print(list_2)
- print(lst.index('hell'))
- #这条语句可以查询在列表当中的索引位置
- print(list_2.index('hello',1,4))
- #这条语句要是查询后面的hello 可以使用范围跳过第一个
-
-
- a.append(x):添加到列表末尾,没有返回值
- a.count(x):统计列表中有多少元素的值等于x,本方法返回整数。
- a.index(x):找出第一个等于x 的值,并返回下标
- a.insert(i,x):将X插入,下标为i的会往后顺次一定,无返回值
- a.pop(i):删除下标第一个为i,有返回值,省略i则删除最后一个
- a.remove(x):无返回值,删除。
- a.reverse():倒置列表
- a.sort(x):排序,默认升序,指定参数为ture,则降序。
- 7.一行语句与写多行语句
- python中可以运用\让一条语句在多行里显示
- python中可以用;在一行写多条语句
- 备注:但Python中不建议这样使用
- 8.python中的函数
- 在Python中每个函数都有自己的箱子,这些箱子可以称为不同模块,每个模块里面都有很多函数
- math:
- abs()曲绝对值;sin()求正弦值;log()求对数
- random:
- randit()生成随机整数;randrange()生成指定范围随机数
- zipfile:
- testzip();exrace()
- os:
- rename();remove();mkdir()
- 导入模块,模块的使用
- import math
- print (math.sin(3))
- 备注:函数的使用必须加上模块名 比如math就是一个模块名sin就是一个函数
- 函数大全地址:
- 3.10.8 Documentation (python.org)
- docs.python.org
- 9.变量名
- 在Python中_ _ name_ _这样一般是内部保留,有特殊含义
- 在Python中,我们起名要是想要关键字可以这样写 input_,想要自己变量名更有意义一点解释清楚一点可以这样my_name_is_xx_
- 10.os函数使用和判断语句
- import os
- os.system('strat c:/x/x/x')
- //让计算机播放音乐
- 11.time函数使用
- import time
- import os
- //导入两个包
- os.system('strat c:/x/x/x')
- //操作系统打开这个音乐并且执行
- time.sleep(1)
- //可以让python程序暂停若干秒
- //这个函数的使用能让音乐的时间更长一些
- 12.random.randint()函数的使用
- import os
- import time
- import random
- # 要求随机生成一个数字,还要打开音乐
- i=1
- while i<=7:
- i=random.randint(1,7)
- fneme='c:/x/x'+str(i)+'.wav'
- os.system(fname)
- time.sleep(1/random.randit(1,2))
- 13.对象的概念(拿车来举例)
- 对象:在python中万物皆是对象(车,车轮类算一个对象,车窗类算一个对象)
- 类:一类事物具有一类事物的特征(车轮类,车窗类)
- 方法:方法就是函数,定义对象的动作,定义对象执行什么的函数方法(跑方法,加油方法,熄火方法)
- 属性:属性就是变量,它所拥有的特征。(形状,宽度,直径,损耗)
- 14.强制类型转换和输出类型
- n=input()
- m=float(n)
- print('%.1f'%m)
- print(type(m))
- 15.input函数和print函数
- 备注:input函数 有返回值,可以用一个变量来接收它
- num=input('请输入一个16进制number:')
- //这里就是用num来接收它,可以用print来输出打印它。
- 备注:print函数 没有返回值 接收到的是一个空
- 16.进制转化函数
- # 十进制转二进制
- print(bin(25))
- # 十进制转八进制
- print(oct(25))
- # 十进制转十六进制
- print(hex(25))
-
- # 二进制转十进制
- print(int('11001',2))
- # 八进制转十进制
- print(int('31',8))
- # 十六进制转十进制
- print(int('19',16))
- 17.列表中字符串的查找函数与统计函数count,find,strip
- 列表中的字符串是不可以修改的,但是可以把它修改后赋值给新的字符串(旧的变量名),实现这个变量的修改
- s.count(a):返回一个整数,即字符串s中出现多少次字符串a
- s.find(a):返回一个整数,即字符串a在字符串s中第一次出现的位置(下标)。
- s.find(a,起点,终点):仍然在s中查找a,但是只是在起点到(终点-1)的下标范围内搜索,未找到则返回-1。
- s.rfind(a):在S中从后向前查找a,首先找到的是倒数第一个a与find方法一样,rfind也可以指定查找起点与终点。
-
- s='鹅鹅鹅,曲项向天歌,白毛浮绿水,红掌拨清波的的'
- c=s.find('的')
- print(c)
-
- while c!=-1:
- print(c)
- c=s.find('的',c+1)
-
- s.strio():创建一个新字符串,但是两端没有任何空格。
- 18.列表中in函数,查找字符串是否有你想找的字符串和简单切片应用
- 列表中字符串是不可以修改的,但是可以利用字符串切边功能
- s=input('我们帮你找李白——请你输入你想查找的东西比如说李白:')
- if '李白' in s:
- print('yes')
- else:
- print('no')
- # 查找李白是否在这个字符串里
- 1.切片实现字符串修改
- s='一二三四五六七八'
- t=s[:2]+'切片'+s[3:5]+'切片'+s[6:]
- print(t)
- 备注:先指定切片分割位置在加上你想修改的东西,再输出就可以的到你想要的修改字符串效果
- 2.将字符串中a,替换为b用replace
- s='Bai Li is amazing!'
- result=s.replace('a','b')
- print(result)
- # 将字符串中s中出现的所有文本a,都替换成文本b
- 19.列表的特点 [ ]与max,min,sum函数
- 列表元素按顺序有序排序
- 索引映射唯一一个数据
- 列表可以存储重复数据
- 任意数据类型混存
- 根绝需要动态分配和回收内存
- 备注:在Python里面最大值这些函数的用法与其他有些不同,直接max(名字)
- //求最大值
- x=[1,2,3,4,5,6,7,8,9]
- print(max(x))
- print(min(x))
- print(sum(x))
- 20.字典 { }
- 以键值对的形式存储,里面的可以是无序的。
- //创建字典
- x={ '张三':100,
- '李四':500
- }
- //第二种创建字典内置函数 dist()
- x=dist(name='Java',age='shiba')
- //空字典
- d={}
- 21.获取字典的元素,使用直接输出或者get函数
- x={ '张三':100,
- '李四':500
- }
- print(x['张三'])
- print(x.get('张三'))
- 22.列表解析与结合列表与range的知识输出二的平方数或者三的倍数
- 列表解析就是将for循环和创建新元素的代码合并成一行
- x=[x*3 for x in range(1,10)]
- print(x)
- #生成三的倍数
- x=[x**2 for x in range(1,10)]
- print(x)
- #生成二的倍数
- 23.遍历切片
- x=['tom','jow','marry','haxi','python']
- print('这有一到三在我的队伍中')
- for x in x[:3]:
- print(x.title())
- //遍历切片只需要先定义一个列表,循环这个列表的指定范围,比如0到三。title是让每个字母开头大写。
- 23.复制列表
- x=['tom','jow','marry','haxi','python']
- y=x[:]//这里就是复制列表
- y.append('tom')//这里向里面添加东西
- print(y)
- 24.遍历列表和元组
- item=['the','th1e','t2he','t3he','t4he','t5he','t5he','t6he','t6he','t6he']
- print(item)
- print(type(item))
- for i in item:
- print(i)
- 备注:这里是遍历列表,遍历的格式都是一样的
-
- xs=('the','first','there','otems','the')
- print(xs)
- print(type(xs))
- for x in xs:
- print(x)
- 备注:这里是遍历元组,遍历的格式都是一样的
- 24.判断值(key)是否在字典中
- scores={
- '张三':158,
- '李四':159,
- '王五':160,
- '三期':161,
- }
- print('张三' in scores)
- print('李武' not in scores)
- 25.字典的删除操作,清空操作,添加操作
- scores={
- '张三':158,
- '李四':159,
- '王五':160,
- '三期':161,
- }
- del scores['张三']
- print(scores)
- //备注:直接del 字典名字就可以删除了 格式 : del 字典名['字典键值名']
-
- scores={
- '张三':158,
- '李四':159,
- '王五':160,
- '三期':161,
- }
- scores.clear()
- # 清空字典当中的所有
- print(scores)
- //备注:字典的清空操作就是x.clear() 格式:x.clear()
-
- scores['柽柳']=98
- print(scores)
- //备注:字典的添加操作 格式:字典名字['值']=值 (如果是数字不需要加'',如果是字符串则需要)
- 26.获取字典视图,获取key,获取value,获取items(两个都拿到)
- scores={
- '张三':158,
- '李四':159,
- '王五':160,
- '三期':161,
- }
- //备注:获取字典的视图就需要用到三个函数 keys() values() items()
- key=scores.keys()
- value=scores.values()
- item=scores.items()
- print(key)
- print(value)
- print(item)
- 27.字典转换列表
- 备注:根据字典视图的取法,然后再使用list函数来输出他们,就可以实现字典和列表之间的转换
- print(list(key))
- print(list(value))
- print(list(item))#这个输出之后是由很多元组组成的列表
- 28.字典的特点
- 字典中的所有蒜素都是一个key-value对,key不允许重复,value可以重复
- 字典中的元素是无序的
- 字典中的key必须是不可变对象
- 字典也可以根据需要动态的伸缩
- 字典会浪费较大的内存,是一种使用空间换时间的数据结构
- 29.字典生成式
- items=['Frust','Suir','Qiki','Kam','Ijaof']
- prices=[1,85,97,45,78]
- x={ite:pric for ite,pric in zip(prices,items)}
- print(x)
- 备注:显示定义一个key,再定义一个value然后用固定格式,这里给了一个变量来接收他的结果再输出的
- 格式 : x={y:z for key_name,value_name in zip(key_names,value_names)}
- 格式: x={y:z for c,d in zip(cs,ds)}
- 30.元组的创建方式
- 1.使用()
- x=('python','thoen','ethoi','tho')
- 2.使用tuple()内置函数
- x=tuple(('python','thoen','ethoi','tho'))
- 3.只有一个元组的元素时需要括号和逗号
- x=('python',)
- 备注:这样输出才能是元组,不然就会是其他类型的数据.
- 31.空的列表,元组,字典怎么创建
- 创建方式:1.使用简写的 2.使用内置函数 (我猜你更喜欢简单的)
-
- 列表:
- 1.x=[]
- 2.x=list()
- 字典:
- 1.x={}
- 2.x=dict()
- 元组:
- 1.x=()
- 2.x=tuple()
- 32.逆序输出字符串
- x=['to','fa','afoij','asfjo']
- print(x[::-1])
- //备注:切片方式
-
- str_info=input('请输入字符串')
- str_list=[]
- for i in range(len(str_info)-1,-1,-1):
- str_list.append(str_info[i])
- print(str_list)
- //备注:循环输出字符串
-
- range(5,0,-1) 输出的是5,4,3,2,1
- range(0,5,) 输出的是0,1,2,3,4
- 23.元组和列表的应用(可变+不可变)
- 备注:元组的内容是不可变的备注:有时候有些内容需要不可变,有些内容则需要变化,则使用元组加列表的方式,让变化的东西放在列表中。
- x=(95,98,[100,200,300,400],789,456)
- print(x)
- print(type(x))
- x[2].append(900)
- print(x)
- //这样的运用添加函数加下标的形式,可以在列表中添加元素,使这个内容一部分可变,一部门不可变。
- 24.集合的创建与增删更新
- 备注:集合里面的内容是会去掉重复值的,集合并且是无序的。
- s={1,5,8,7498,978,7}
- print(s)
- //直接创建
- s=set([1,45,789,7497,98])
- print(s)
- print(type(s))
- //用set()函数来创建他,set()里面可以是任意的。
- 备注:集合的增删与列表的函数的一样的。
- 25.集合的关系
- s0={10,20,30,40,50,60}
- s1={10,20,30,40,50,60}
- s2={10,20,30,40,}
- s3={10,20,30,60,70,80}
-
- #测试两个集合是否相等
- print(s0==s1)
- print(s1!=s3)#在Python因为集合是无序的,所以集合元素的不相同,不影响两个元素相等顺序不等的集合是一样的
- #测试一个集合是否是另一个集合的子集
- print(s2.issubset(s0))#测试s2是否是s0集合的子集
- print(s0.issubset(s1))
- #测试一个集合是否是另一个集合的超类
- print(s0.issuperset(s2))#测试s0是否是s2的超类
- print(s3.issubset(s0))
- #测试一个集合是否含有交集
- //含有交集则返回flase没有交集则返回true
- print(s0.isdisjoint(s1))#测试s0是否和s1有交集部分
-
-
-
-
-
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。