精华内容
下载资源
问答
  • 函数Python中是最基本的程序结构,用来最大化地让我们的代码进行复用。简单地说,一个函数就是一组Python语句的组合,它们可以在程序中运行一次或多次运行。Python中的函数在其他语言中也叫做过程或子例程,那么...

    什么是函数?

    函数在Python中是最基本的程序结构,用来最大化地让我们的代码进行复用。简单地说,一个函数就是一组Python语句的组合,它们可以在程序中运行一次或多次运行。Python中的函数在其他语言中也叫做过程或子例程,那么这些被包装起来的语句通过一个函数名称来调用。有了函数,可以在很大程度上减少复制及粘贴代码的次数了。可以把相同的代码可以提炼出来做成一个函数,在需要的地方只需要调用即可。那么这样就提高了代码的复用率了,整体代码看起来比较简练,没有那么臃肿了。

    函数分类

    内置函数:为了方便我们的开发,针对一些简单的功能,python解释器已经为我们定义好了的函数即内置函数。对于内置函数,我们可以拿来就用而无需事先定义,如len(),sum(),max()

    自定义函数:很明显内置函数所能提供的功能是有限的,这就需要我们自己根据需求,事先定制好我们自己的函数来实现某种功能,以后,在遇到应用场景时,调用自定义的函数即可

    python自定义函数

    def 函数名(参数1,参数2,参数3,...):'''注释'''函数体return 返回的值

    ContractedBlock.gif

    ExpandedBlockStart.gif

    def dragon():

    print("Hello World")

    dragon()------------------------Hello World

    View Code

    函数使用原则

    函数即“变量”,“变量”必须先定义后引用。未定义而直接引用函数,就相当于在引用一个不存在的变量名,因而函数应该先定义,在调用

    ps:函数在定义阶段只检测语法,不执行代码

    ContractedBlock.gif

    ExpandedBlockStart.gif

    def world():

    print('from world')

    def python():

    print('from python')

    world()

    python()-------------------------

    frompythonfrom world

    View Code

    定义函数形式

    无参:定义时无参,意味着调用时也无需传入参数,应用场景仅仅只是执行一些操作,比如与用户交互,打印

    ContractedBlock.gif

    ExpandedBlockStart.gif

    def dragon():

    print("Hello World")

    dragon()------------------------Hello World

    View Code

    有参:需要根据外部传进来的参数,才能执行相应的逻辑,即定义时有参,意味着调用时则必须传入参数

    ContractedBlock.gif

    ExpandedBlockStart.gif

    def tages(tag,n):

    print(tag*n)

    tages('*',6)-------------------------

    ******

    View Code

    空函数:设计代码结构

    ContractedBlock.gif

    ExpandedBlockStart.gif

    def test(parms):

    pass

    View Code

    函数调用

    语句形式:test()

    表达式形式:3*len('world')

    作为另外一个函数的参数:range(len('Hello Python'))

    函数返回值 return

    无return语句时返回None

    return 1个值则返回1个值

    return 逗号分隔多个值则返回元组

    什么时候该有返回值?

    调用函数,经过一系列的操作,最后要拿到一个明确的结果,则必须要有返回值;通常有参函数需要有返回值,输入参数,经过计算,得到一个最终的结果

    什么时候不需要有返回值?

    调用函数,仅仅只是执行一系列的操作,最后不需要得到什么结果,则无需有返回值;通常无参函数不需要有返回值

    函数的参数

    位置参数:按照从左到右的顺序定义的参数

    位置形参:必选参数

    位置实参:按照位置给形参传值

    关键字参数:按照key=value的形式定义的实参,无需按照位置为形参传值

    关键字实参必须在位置实参右面

    对同一个形参不能重复传值

    ContractedBlock.gif

    ExpandedBlockStart.gif

    def max(x,y):

    print(x,y)if x >y:returnxelse:returny

    print(max(y= 10,x = 20))------------------------------

    20 10

    20

    View Code

    默认参数:形参在定义时就已经为其赋值,可以传值也可以不传值,经常需要变得参数定义成位置形参,变化较小的参数定义成默认参数(形参)

    只在定义时赋值一次

    默认参数的定义应该在位置形参右面

    默认参数通常应该定义成不可变类型

    ContractedBlock.gif

    ExpandedBlockStart.gif

    def stu_info(name,sex = 'male'): #默认参数,有一个默认值

    print('name:%s,sex:%s'%(name,sex))

    stu_info('dragon') #默认参数可以不传值

    stu_info('tom','female') #如果传值了,覆盖默认值

    ------------------------------name:dragon,sex:male

    name:tom,sex:female

    View Code

    可变长参数:可变长指的是实参值的个数不固定,而实参有按位置和按关键字两种形式定义,针对这两种形式的可变长,形参对应有两种解决方案来完整地存放它们,分别是*args,**kwargs

    ContractedBlock.gif

    ExpandedBlockStart.gif

    def func(x,y,*z): #*c接收的是5,6,7,8并且输出一个元祖包含这个4个5 *args代表把散列的元素拼成元组

    sum = x+yfor i inz:

    sum+=ireturnsumprint(func(3,4,5,6,7,8))-----------------------------

    33

    def fun(x,y,**kwargs):print(x,y,kwargs)

    fun(x= 10,y = 20,z= 30,w = 50)------------------------------

    33

    10 20 {'z': 30, 'w': 50}

    View Code

    命名关键字参数:*后定义的参数,必须被传值(有默认值的除外),且必须按照关键字实参的形式传递

    ContractedBlock.gif

    ExpandedBlockStart.gif

    def foo(x,y,*args,z=1,w,**kwargs):print(x,y)print(args)print(z)print(w)print(kwargs)

    foo(1,2,3,4,5,w=3,t=4,j=5)------------------------------

    1 2(3, 4, 5)1

    3{'t': 4, 'j': 5}

    View Code

    展开全文
  • 的值的函数value按format_spec的格式来格式化,然而函数解释format_spec是依据value的类型来决定的。不同的类型有不同的格式化解释。当參数format_spec为空时,本函数等同于函数str(value)的方式。事实上本函数调用...

    的值的函数value按format_spec的格式来格式化,然而函数解释format_spec是依据value的类型来决定的。不同的类型有不同的格式化解释。

    当參数format_spec为空时,本函数等同于函数str(value)的方式。

    事实上本函数调用时,是把format(value, format_spec)的方式转换为type(value).__format__(format_spec)方式来调用。因此在value类型里就查找方法__format__(),假设找不到此方法,就会返回异常TypeError。

    当中format_spec的编写方式例如以下形式:

    format_spec ::=  [[fill]align][sign][#][0][width][,][.precision][type]

    fill        ::=  

    align       ::=  "" | "=" | "^"

    sign        ::=  "+" | "-" | " "

    width       ::=  integer

    precision   ::=  integer

    type        ::=  "b" | "c" | "d" | "e" | "E" | "f" | "F" | "g" | "G" | "n" | "o" | "s" | "x" | "X" | "%"

    fill是表示能够填写不论什么字符。

    align是对齐方式,是右对齐。^是居中对齐。

    sign是符号,+表示正号,-表示负号。

    width是数字宽度,表示总共输出多少位数字。

    precision是小数保留位数。

    type是输出数字值是的表示方式,比方b是二进制表示;比方E是指数表示。比方X是十六进制表示。

    样例:

    #format()

    print(format(2918))

    print(format(0x500, 'X'))

    print(format(3.14, '0=10'))

    print(format(3.14159, '05.3'))

    print(format(3.14159, 'E'))

    print(format('test', '<20'))

    print(format('test', '>20'))

    print(format('test', '^20'))

    结果输出例如以下:

    2918

    500

    0000003.14

    03.14

    3.141590E+00

    test

    test

    test

    蔡俊生  QQ:9073204 深圳

    版权声明:本文博客原创文章,博客,未经同意,不得转载。

    展开全文
  • 绝对是一个统计问题-听起来你是想做一个概率测试,看看这个分布是否与正态分布、...在Python use SciPy中,您只需要返回p值来测试,所以这个函数返回2个值(为了清楚起见,这里忽略了可选的(不需要的)输入):impor...

    绝对是一个统计问题-听起来你是想做一个概率测试,看看这个分布是否与正态分布、对数正态分布、二项式分布等有显著的相似性。最简单的方法是测试正常或对数正常,如下所述。

    设置Pvalue截止值,通常如果Pvalue&lt;=0.05,则它不是正态分布的。

    在Python use SciPy中,您只需要返回p值来测试,所以这个函数返回2个值(为了清楚起见,这里忽略了可选的(不需要的)输入):

    import scipy.stats

    [W, Pvalue] = scipy.stats.morestats.shapiro(x)

    执行Shapiro-Wilk正态性测试。Shapiro-Wilk检验检验了数据来自正态分布的零假设。

    如果要查看它是否为对数正态分布(前提是它未通过上面的p测试),可以尝试:

    import numpy

    [W, Pvalue] = scipy.stats.morestats.shapiro(numpy.log(x))

    用同样的方法解释——我只是在一个已知的对数正态分布模拟上进行了测试,在np.log(x)测试中得到了0.17个p值,在标准shapiro(x)测试中得到了一个接近0的数字。这告诉我对数正态分布是更好的选择,正态分布失败惨重。

    我把你要找的东西简单化了。对于其他发行版,您可能需要沿着Q-Q图https://en.wikipedia.org/wiki/Q%E2%80%93Q_plot的路线做更多的工作,而不是简单地遵循我提出的一些测试。这意味着你有一个你想要适应的分布图和你的数据图。下面是一个简单的例子,如果你愿意的话,可以让你走上这条路:import numpy as np

    import pylab

    import scipy.stats as stats

    mydata = whatever data you are looking to fit to a distribution

    stats.probplot(mydata, dist='norm', plot=pylab)

    pylab.show()

    上面的代码可以替换scipy库中的dist='norm'的任何内容http://docs.scipy.org/doc/scipy/reference/tutorial/stats/continuous.html#continuous-distributions-in-scipy-stats

    然后找到它的scipy名称(必须根据文档添加形状参数,例如stats.probplot(mydata, dist='loggamma', sparams=(1,1), plot=pylab)或对于student Tstats.probplot(mydata, dist='t', sparams=(1), plot=pylab)),然后查看绘图并查看数据在该分布下的接近程度。如果数据点很接近,则可以找到分布。它在图上也会给你一个R^2值;一般来说,接近1的值越适合。

    如果您想继续尝试使用数据帧,请尝试更改为:plt.hist(df['Frequency'].values)

    如果这个答案回答了你的问题,请投赞成票:)需要一些赏金来回答我自己的编程难题。

    展开全文
  • 通过风变程序,做的小项目练习,一点点进步,一点点来 关于cvs的简单用法,可以看这里... 主要是向csv中输入一些字典数据 import csv ...with open('C:\\python\\assets.csv', 'a', newline='') as csvf...

    通过风变程序,做的小项目练习,一点点进步,一点点来

     

    关于cvs的简单用法,可以看这里https://www.cnblogs.com/unnameable/p/7366437.html

    主要是向csv中输入一些字典数据

     

    import csv

    #调用csv模块

    with open('C:\\python\\assets.csv', 'a', newline='') as csvfile:

    #调用open()函数打开csv文件,传入参数:文件名“assets.csv”、追加模式“a”、newline=''。

    writer = csv.writer(csvfile, dialect='excel')

    # 用csv.writer()函数创建一个writer对象。

    header=['小区名称', '地址', '建筑年份', '楼栋', '单元', '户室', '朝向', '面积']

    writer.writerow(header)

     

    title=input('请输入小区名称:')

    address = input('请输入小区地址:')

    year = input('请输入小区建造年份:')

    block = input('请输入楼栋号:')


     

    unit_loop = True

    while unit_loop:

    unit=input('请输入单元号:')

    start_floor = input('请输入起始楼层:')

    end_floor = input('请输入终止楼层:')

     

    # 开始输入模板数据

    input('接下来请输入起始层每个房间的门牌号、南北朝向及面积,按任意键继续')

     

    start_floor_rooms = {}

    floor_last_number = []

    # 收集起始层的房间信息

     

    # 定义循环控制量

    room_loop = True

    while room_loop:

    last_number = input('请输入起始楼层户室的尾号:(如01,02)')

    floor_last_number.append(last_number)

    #将尾号用append()添加列表里,如floor_last_number = ['01','02']

    room_number = int(start_floor + last_number)

    #户室号为room_number,由楼层start_floor和尾号last_number组成,如301

     

    direction = int(input('请输入 %d 的朝向(南北朝向输入1,东西朝向输入2):' % room_number ))

    area = int(input('请输入 %d 的面积,单位 ㎡ :' % room_number))

    start_floor_rooms[room_number] = [direction,area]

    # 户室号为键,朝向和面积组成的列表为值,添加到字典里,如start_floor_rooms = {301:[1,70]}

     

    continued= input('是否需要输入下一个尾号?按 n 停止输入,按其他任意键继续:')

    #加入打破循环的条件

    if continued == 'n':

    room_loop = False

    else:

    room_loop = True

     

    unit_rooms = {}

    #新建一个放单元所有户室数据的字典

    unit_rooms[start_floor] = start_floor_rooms

    #unit_rooms={3:{301:[1,80],302:[1,80],303:[2,90],304:[2,90]}}

    for floor in range(int(start_floor) + 1, int(end_floor) + 1):

    #遍历除初始楼层外的其他楼层

    floor_rooms = {}

    #每个楼层都建立一个字典

    for i in range(len(start_floor_rooms)):

    #遍历每层有多少个房间,这里是3,即执行for i in range 3 的循环

    number = str(floor) + floor_last_number[i]

    info = start_floor_rooms[int(start_floor + floor_last_number[i])]

    # 依次取出字典start_floor_rooms键对应的值,即面积和朝向组成的列表

    floor_rooms[int(number)] = info

    #给字典floor_rooms添加键值对,floor_rooms = {401:[1,80]}

    unit_rooms[floor] = floor_rooms

    with open('assets.csv', 'a', newline='')as csvfile:

    #Mac用户要加多一个参数 encoding = 'GBK'

    writer = csv.writer(csvfile, dialect='excel')

    for sub_dict in unit_rooms.values():

    '''

    for value in DictName.values():

    # value的名字可以自行另取

    # DictName是要遍历的字典的名称

    # .values():是固定的用法

    '''

    for room,info in sub_dict.items():

    '''for k,v in DictName.items():

    #遍历字典的键值对,k对应键,v对应值

    #k,v 的名字可以自己取,DictName是字典名'''

    dire = ['', '南北', '东西']

    writer.writerow([title,address,year,block,unit,room,dire[info[0]],info[1]])

     

    unit_continue = input('是否需要输入下一个单元?按 n 停止单元输入,按其他任意键继续:')

    if unit_continue == 'n':

    unit_loop = False

    else:

    unit_loop = True

     

    print('恭喜你,资产录入工作完成!')

    展开全文
  • complex([real[, imag]])中文说明:创建一个值为real + imag * j的复数或者转化一个字符串或数为复数。如果第一个参数为字符串,则不需要指定第二...英文说明:Create a complex number with the value real + imag...
  • python中,我们可以对列表、字符串、元祖中的元素进行排序,那对于字典中的元素可以排序吗?...方法一:key使用lambda匿名函数value进行排序dict= {'a':1,'b':4,'c':2}sorted(dict.items(),key = lambda x:x[1...
  • 函数原型format(value[,format_spec])参数意义value: 需要被格式化的字符串format_spec: 格式化的格式函数定义与用法本函数把值value按format_spec的格式来格式化,然而函数解释format_spec是根据value的类型来...
  • Python使用sorted对字典的key或value排序sorted函数sorted(iterable,key,reverse)iterable 待排序的可迭代对象key 对应的是个函数, 该函数用来决定选取用哪些值来进行排序reverse 反转排序对key排序d: dict = {"p": ...
  • DataFrame.value_counts(subset=None,normalize=False,sort=True,ascending=False)[source]返回一个包含DataFrame中唯一行数的Series。1.1.0版中的新功能。参数:subset:list-like, 可选计算唯一组合时要使用的列。...
  • 我是python的新手。从2013年开始在大学学习以来,我一直在努力...我有一些def函数,看起来像:def thread_1():a = input('Value UTS (100) = ')if a > 100:print line2d=raw_input('Dont higher than 100. Input ...
  • 需要拿到一个函数里所有的传入的参数,并且存在一个字典里。下面的方法确实拿到了字典,不过要求函数必须用非固定参数**kwargs定义,而且对调用函数很不友好def func1(**kwargs):d = ‘local_d‘return kwargsres = ...
  • fromkeys()函数 python

    2020-07-09 23:06:09
    Python中,fromkeys() 函数用于创建一个新字典,语法如下: dict.fromkeys(seq[, value]) seq——字典键值列表。 value——可选参数, 设置键序列(seq)对应的值,默认为 None。 返回值——一个新字典。 例: seq...
  • 英文文档:format(value[, format_spec])Convert a value to a “formatted” representation, as controlled by format_spec. The interpretation of format_spec will depend on the type of the value argument, ...
  • 语法:列表list.pop(obj=list[-1])pop()用于删除并返回列表中的一个元素(默认为最后一个元素)obj:要删除并返回的列表元素字典dict.pop(key[,default])pop()用于删除字典中给定的key及对应的value,返回被删除key...
  • redis是一个key-value结构的数据库,value的格式可以是string,set(),list,map集合(即python里面的dict),sorted set(有序集合)1、连接redis数据库说明小插曲:Redis和strictRedis,后者是官方推荐使用的import ...
  • python中bool函数Python bool()函数 (Python bool() function)bool() function is used to convert a given value to the Boolean value (True or False) as per the standard truth testing procedures. It accepts...
  • 在获取函数的返回值return_value = my_function(my_argument)例如,通过在命令行上运行python来使用解释器:^{pr2}$清除代码:你的代码没有意义。在什么是nmaidcount().finallist?在你在程序中的什么地方定义final...
  • 字典 dictkey-value键值对的数据集合可变的,无序的,key是不重复的字典元素访问d[key] 返回key对应的值value,key不存在抛出keyErrorget(key[,default])返回key对应的值,key不存在返回缺省值,没有缺省值返回...
  • Python中什么是setdict的作用是建立一组key和一组value的映射关系,dict的key是不能重复的。有的时候,我们只想要dict的key,不关心key对应的value,目的就是保证这个集合的元素不会重读,这时,set就派上用场了。...
  • 一、URL的编码与解码在python2中包含的urllib和urllib2,都是接受URL请求...通常编码工作,我们使用urllib.parse.urlencode()函数,帮我们将key:value(类似于python的字典)这样的键值对转换成"key=value"这样的字...
  • 时常需要对数据进行排序、计量,以获取数据的某些信息,在之前的文章中,我已经为大家介绍过如何用如何使用sort_value函数对数据进行排序,(忘记的同学可以在下面复习一下~)侦探L:如何使用Python对数据进行排序...
  • def fun_var_args(farg, *args): print "arg:", farg for value in args: print "another arg:", value fun_var_args(1, "two", 3) # *args可以当作可容纳多个变量组成的listpython函数的几种参数类型python map函数...
  • 之前,跟着白月黑羽学习了Python中最常用的数据类型函数、字符串、列表和元组,今天继续学习另外一个很重要的数据类型 - 字典。为什么需要字典字典是Python开发中非常重要的一种数据类型。为什么呢? 因为字典这种...
  • 函数1、def2、命名3、函数体4、return 返回值defget_return():a= 1return a函数参数有 形参和实参定义几个形参就要传几个实参。形参接收传参的时候默认是一一对应的1、普通参数def get_return(b): #b为形参a = b + 1...
  • Pandas DataFrame head()方法返回DataFrame或Series的前n行,其中n是用户输入值。 head()函数用于获取前n行。这对于快速测试对象中的数据类型...句法DataFrame.head(n=5) (n=5 is default we can set any value)参...
  • 函数调用如下:g.vertices.index.lookup(identifier="value")现在请注意,idenitifier是一个我尚未定义但由api解析的变量,value是一个字符串.db = client.test_database等于db = client["test_database"]test_...
  • 我发现文档很清楚,我会在这里粘贴算法的伪代码:你的参数:> learning_rate:1e-4和1e-2之间是标准的... epsilon:默认为1e-08The default value of 1e-8 for epsilon might not be a good default in general. F...
  • python函数

    2017-01-08 11:29:53
    python函数 1,取绝对值 abs(x) Return the absolute value of a number. The argument may be a plain or long integer or a floating point number. If the argument is a complex number, its magnitude is ...
  • 1. Series 情况下:pandas 的 value_counts() 函数可以对Series里面的每个值进行计数并且排序。import pandas as pddf = pd.DataFrame({'区域' : ['西安', '太原', '西安', '太原', '郑州', '太原'],'10月份销售' : ...
  • python中ord函数 Python ord()函数 (Python ord() function) ord() function is a library function in Python, it is used to get number value from given character value, it accepts a character and returns ...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 5,679
精华内容 2,271
关键字:

value函数python

python 订阅