精华内容
下载资源
问答
  • python division如何取整

    2021-03-06 18:20:12
    1、在python2 中导入division(精确除法),即from __future__ import division ,当我们在程序中没有导入该特征时,"/"操作符执行的只能是整除,也就是取整数,只有当我们导入division(精确算法)以后,"/"执行的才是...

    b9a736b56e29598a287df3ca39b9f04b.png

    1、在python2 中导入division(精确除法),即from __future__ import division ,当我们在程序中没有导入该特征时,"/"操作符执行的只能是整除,也就是取整数,只有当我们导入division(精确算法)以后,"/"执行的才是精确算法。

    如:#python 2.7.6

    Python 2.7.6 (default, Nov 10 2013, 19:24:18) [MSC v.1500 32 bit (Intel)] on win32

    Type "copyright", "credits" or "license()" for more information.

    #导入前

    >>> 1/2

    0

    >>> 10/3

    3

    #导入后

    >>> from __future__ import division

    >>> 1/2

    0.5

    >>> 10/3

    3.3333333333333335

    #导入后如果要去整数,加'//'

    >>> 10//3

    3

    2、但是在python3中已经支持了精确算法,所以无需再导入division(精确算法):

    如:#python3.4.4

    Python 3.4.4 (v3.4.4:737efcadf5a6, Dec 20 2015, 20:20:57) [MSC v.1600 64 bit (AMD64)] on win32

    Type "copyright", "credits" or "license()" for more information.

    >>> 1/2

    0.5

    >>> 10/3

    3.3333333333333335

    #如果需要取整数,加'//'

    >>> 10//3

    3

    python学习网,免费的在线学习python平台,欢迎关注!

    展开全文
  • ZeroDivisionError: float division by zero

    千次阅读 2021-02-08 09:49:45
    本文章的所有代码和相关文章, 仅用于经验技术交流分享,禁止将相关技术应用到不正当途径,滥用技术产生的风险与本人无关...ZeroDivisionError: float division by zero 先来看一下脚本 脚本 """ 特别注意: 17行VOC_LAB

    本文章的所有代码和相关文章, 仅用于经验技术交流分享,禁止将相关技术应用到不正当途径,滥用技术产生的风险与本人无关。
    本文章是自己学习的一些记录。

    开始

    最近有个学弟做目标检测,在xml文件转换为tfrecord文件的时候程序出现bug,帮他调试程序的时候,出现这样的报错:
    a = float(bbox.find(‘ymin’).text) / shape[0]
    ZeroDivisionError: float division by zero
    先来看一下脚本

    脚本

    """
    特别注意: 17行VOC_LABELS标签要修改,189行的path地址要正确
    """
    
    import os
    import sys
    import random
    import numpy as np
    import tensorflow as tf
    import xml.etree.ElementTree as ET
    
    # 我的标签定义只有手表这一类,所以下面的VOC_LABELS要根据自己的图片标签而定,第一组'none': (0, 'Background')是不能删除的;
    VOC_LABELS = {
        'none': (0, 'Background'),
        '改成自己的类别': (1, '改成自己的类别')
    }
    
    # 图片和标签存放的文件夹.
    DIRECTORY_ANNOTATIONS = 'Annotations/'
    DIRECTORY_IMAGES = 'JPEGImages/'
    
    # 随机种子.
    RANDOM_SEED = 4242
    SAMPLES_PER_FILES = 3  # 每个.tfrecords文件包含几个.xml样本
    
    
    
    def int64_feature(value):
        """
        生成整数型,浮点型和字符串型的属性
        """
        if not isinstance(value, list):
            value = [value]
        return tf.train.Feature(int64_list=tf.train.Int64List(value=value))
    
    
    def float_feature(value):
        if not isinstance(value, list):
            value = [value]
        return tf.train.Feature(float_list=tf.train.FloatList(value=value))
    
    
    def bytes_feature(value):
        if not isinstance(value, list):
            value = [value]
        return tf.train.Feature(bytes_list=tf.train.BytesList(value=value))
    
    
    def _process_image(directory, name):
        """
        图片处理
        """
        # Read the image file.
        filename = directory + DIRECTORY_IMAGES + name + '.jpg'
        image_data = tf.gfile.FastGFile(filename, 'rb').read()
    
        # Read the XML annotation file.
        filename = os.path.join(directory, DIRECTORY_ANNOTATIONS, name + '.xml')
        tree = ET.parse(filename)
        root = tree.getroot()
    
        # Image shape.
        size = root.find('size')
        shape = [int(size.find('height').text),
                 int(size.find('width').text),
                 int(size.find('depth').text)]
        # Find annotations.
        bboxes = []
        labels = []
        labels_text = []
        difficult = []
        truncated = []
        for obj in root.findall('object'):
            label = obj.find('name').text
            labels.append(int(VOC_LABELS[label][0]))
            labels_text.append(label.encode('ascii'))  # 变为ascii格式
    
            if obj.find('difficult'):
                difficult.append(int(obj.find('difficult').text))
            else:
                difficult.append(0)
            if obj.find('truncated'):
                truncated.append(int(obj.find('truncated').text))
            else:
                truncated.append(0)
    
            bbox = obj.find('bndbox')
            a = float(bbox.find('ymin').text) / shape[0]
            b = float(bbox.find('xmin').text) / shape[1]
            a1 = float(bbox.find('ymax').text) / shape[0]
            b1 = float(bbox.find('xmax').text) / shape[1]
            a_e = a1 - a
            b_e = b1 - b
            if abs(a_e) < 1 and abs(b_e) < 1:
                bboxes.append((a, b, a1, b1))
    
        return image_data, shape, bboxes, labels, labels_text, difficult, truncated
    
    
    def _convert_to_example(image_data, labels, labels_text, bboxes, shape,difficult, truncated):
        """
        转化样例
        """
        xmin = []
        ymin = []
        xmax = []
        ymax = []
    
        for b in bboxes:
            assert len(b) == 4
            # pylint: disable=expression-not-assigned
            [l.append(point) for l, point in zip([ymin, xmin, ymax, xmax], b)]
            # pylint: enable=expression-not-assigned
    
        image_format = b'JPEG'
        example = tf.train.Example(features=tf.train.Features(feature={
            'image/height': int64_feature(shape[0]),
            'image/width': int64_feature(shape[1]),
            'image/channels': int64_feature(shape[2]),
            'image/shape': int64_feature(shape),
            'image/object/bbox/xmin': float_feature(xmin),
            'image/object/bbox/xmax': float_feature(xmax),
            'image/object/bbox/ymin': float_feature(ymin),
            'image/object/bbox/ymax': float_feature(ymax),
            'image/object/bbox/label': int64_feature(labels),
            'image/object/bbox/label_text': bytes_feature(labels_text),
            'image/object/bbox/difficult': int64_feature(difficult),
            'image/object/bbox/truncated': int64_feature(truncated),
            'image/format': bytes_feature(image_format),
            'image/encoded': bytes_feature(image_data)}))
        return example
    
    
    def _add_to_tfrecord(dataset_dir, name, tfrecord_writer):
        """
        增加到tfrecord
        """
        image_data, shape, bboxes, labels, labels_text, difficult, truncated = \
            _process_image(dataset_dir, name)
        example = _convert_to_example(image_data, labels, labels_text,
                                      bboxes, shape, difficult, truncated)
        tfrecord_writer.write(example.SerializeToString())
    
    
    def _get_output_filename(output_dir, name, idx):
        """
        name为转化文件的前缀
        """
        return '%s/%s_%03d.tfrecord' % (output_dir, name, idx)
    
    
    def run(dataset_dir, output_dir, name='voc_train', shuffling=False):
        if not tf.gfile.Exists(dataset_dir):
            tf.gfile.MakeDirs(dataset_dir)
    
        path = os.path.join(dataset_dir, DIRECTORY_ANNOTATIONS)
        filenames = sorted(os.listdir(path))
        if shuffling:
            random.seed(RANDOM_SEED)
            random.shuffle(filenames)
    
        i = 0
        fidx = 0
        while i < len(filenames):
            # Open new TFRecord file.
            tf_filename = _get_output_filename(output_dir, name, fidx)
            with tf.python_io.TFRecordWriter(tf_filename) as tfrecord_writer:
                j = 0
                while i < len(filenames) and j < SAMPLES_PER_FILES:
                    sys.stdout.write(' Converting image %d/%d \n' % (i + 1, len(filenames)))  # 终端打印,类似print
                    sys.stdout.flush()  # 缓冲
    
                    filename = filenames[i]
                    img_name = filename[:-4]
                    _add_to_tfrecord(dataset_dir, img_name, tfrecord_writer)
                    i += 1
                    j += 1
                fidx += 1
    
        print('\nFinished converting the Pascal VOC dataset!')
    
    
    def main(_):
        # 原数据集路径,输出路径以及输出文件名,要根据自己实际做改动
        dataset_dir = "../VOC2007_test/"
        output_dir = "tfrecords_/"
        if not os.path.exists(output_dir):
            os.mkdir(output_dir)
    
        run(dataset_dir, output_dir)
    
    
    if __name__ == '__main__':
        tf.app.run()
    
    

    这里改成自己的类别

    VOC_LABELS = {
        'none': (0, 'Background'),
        '改成自己的类别': (1, '改成自己的类别')
    }
    

    通过报错找到源头:

    a = float(bbox.find('ymin').text) / shape[0]
    

    是这里的问题,然后找到他标注的数据,果然发现数据有问题
    在这里插入图片描述
    这个里面标注的数据长宽为0,有这样的数据存在导致程序报错,
    更改完数据后,再执行:
    在这里插入图片描述
    在这里插入图片描述
    我只让他给我发了几张图片测试,bug解决。

    展开全文
  • 我得到了一个ZeroDivisionError: division by zero错误,easternTotal和其他使用a、b、c和{}进行除法的总值。在 如果我打印a、b、c、或{}的值,则显示0。我的问题是为什么它们的值是0?a、b、c、和{}的值在if语句中...

    我的目标是统计一个文件中属于特定时区的tweet总数。

    我有以下功能(我注意到功能末尾附近的故障区域并给出了注释):def readTweets(inFile, wordsName):

    words = []

    lat = 0

    long = 0

    keyword = keywords(wordsName)

    sents = keywordSentiment(wordsName)

    value = 0

    eastern = 0

    central = 0

    mountain = 0

    pacific = 0

    a = 0

    b = 0

    c = 0

    d = 0

    easternTweets = 0

    centralTweets = 0

    mountainTweets = 0

    pacificTweets = 0

    for line in inFile:

    entry = line.split()

    for n in range(0, len(entry) - 1):

    entry[n] = entry[n].strip("[],!?#./-=+_@")

    if n > 4: # n>4 because words begin on 5th index of list

    entry[n] = entry[n].lower()

    words.append(entry[n])

    lat = float(entry[0])

    long = float(entry[1])

    timezone = getTimeZone(lat, long)

    if timezone == "eastern":

    easternTweets += 1

    if timezone == "central":

    centralTweets += 1

    if timezone == "mountain":

    mountainTweets += 1

    if timezone == "pacific":

    pacificTweets += 1

    for i in range(0, len(words)):

    for k in range(0, len(keyword)):

    if words[i] == keyword[k]:

    value = int(sents[k])

    if timezone == "eastern":

    eastern += value

    a += 1

    if timezone == "central":

    central += value

    b += 1

    if timezone == "mountain":

    mountain += value

    c += 1

    if timezone == "pacific":

    pacific += value

    d += 1

    # the values of a,b,c,d are 0

    easternTotal = eastern/a # getting error

    centralTotal = central/b # for

    mountainTotal = mountain/c # these

    pacificTotal = pacific/d # values

    print("Total tweets per time zone:")

    print("Eastern: %d" % easternTweets)

    print("Central: %d" % centralTweets)

    print("Mountain: %d" % mountainTweets)

    print("Pacific: %d" % pacificTweets)

    我得到了一个ZeroDivisionError: division by zero错误,easternTotal和其他使用a、b、c和{}进行除法的总值。在

    如果我打印a、b、c、或{}的值,则显示0。我的问题是为什么它们的值是0?a、b、c、和{}的值在if语句中没有变化吗?在

    展开全文
  • 但结果依旧zeroDivisionError: division by zero, 这个时候我想起了调用之前成功的刷题内容。上次的成功方式给我了启示,也请大家分析一下。 x和y的判断式放到了if语句里。竟然成功了,上次自己还写着要放到里面。...

    2021年第7次刷第4章遇到的问题。

    经过多次刷题,对这道题的大部分问题有了很好的看法。但是出现了下面的问题。然后调用了之前第6次刷题的结果发现了解题的方法。为各位兄弟们抛块砖,不知道这个问题属于什么类型的。大家多多指教。

    在这里插入图片描述
    在这里插入图片描述

    2021-11-27 第7次刷题出现了

    a,b,c,d,e,f =1,2,2,4,4,5。

    dif_num = a * d - b * c
    x = ((e * d) - (b * f)) /dif_num
    y = ((a * f) - (e * c)) /dif_num

    if dif_num != 0:

    print(f"x is {x} and y is {y}")
    

    else:
    print(“The equatopm has no solution”)

    结果运行如下在这里插入图片描述### 这个结果出现,我想到是不是不能为0 。以前遇到过。zeroDivisionError: division by zero,好我是不是可以用import sys 配合sys.exit()呢?

    在这里插入图片描述

    但结果依旧zeroDivisionError: division by zero,

    这个时候我想起了调用之前成功的刷题内容。上次的成功方式给我了启示,也请大家分析一下。

    在这里插入图片描述

    x和y的判断式放到了if语句里。竟然成功了,上次自己还写着要放到里面。看来是间隔时间长了。就忘了。

    分享到这里。有知道这是为什么原因的朋友吗?

    给我留个言。

    展开全文
  • 1、OverflowError: integer division result too large for a float Python3 中的 int 类型是长整型,可以在计算中处理任意大的整数,而 float 类型有范围,所以下方例子中,极大整数的除法计算造成了溢出错误。 big...
  • Integer division by zero

    2021-06-11 16:08:34
    int result = 0;...Integer division by zero 编写程序涉及到除法运算时,需注意:在除法运算前要进行除数是否为0的检查 改为 int result = 0; int a = 0, b = 0; if(b != 0) printf("%d", a / b); ...
  • 在程序顶部添加from __future__ import division会导致常量在normal中折叠,就像在floor中一样(当然,尽管结果不同,因为现在{}是浮点除法)。在normal 10 0 SETUP_LOOP 24 (to 27) 3 LOAD_GLOBAL 0 (xrange) 6 ...
  • 解决 ZeroDivisionError: integer division or modulo by zero 问题 Traceback (most recent call last): File "F:/python_projects/BLINK/elq/biencoder/train_biencoder.py", line 593, in <module> main...
  • packages/jcvi/graphics/karyotype.py", line 139, in __init__ ratio = span / total ZeroDivisionError: float division by zero 我得几个文件是 layout # y, xstart, xend, rotation, color, label, va, bed .6,...
  • Person\detection\utils.py", line 232, in log_every header, total_time_str, total_time / len(iterable))) ZeroDivisionError: float division by zero 是因为 # split the dataset in train and test set ...
  • 运行代码时,出现ZeroDivisionError: integer division or modulo by zero问题,具体如下: Traceback (most recent call last): File "./tools/train_net.py", line 51, in <module> launch( File "./...
  • #include<bits/stdc++.h> using namespace std; #define ll long long int t,n;const int N=105; char s[N][30];int tot=0; char ch[N*10000];int sz[N]; int vis1[30],vis2[30],cnt=0;...void
  • 这里的错误就是由于数据集太小。 # 2. Split into train / validation partitions n_val = int(len(dataset) * val_percent) n_train = len(dataset) - n_val #我这里是刚好有10张数据集然后其中一张被拆分为...
  • } } 报错信息: - Exception occurred during processing request: Division undefined java.lang.ArithmeticException: Division undefined at java.math.BigDecimal.divide(BigDecimal.java:1486) at ...
  • ZeroDivisionError: integer division or modulo by zero错误,百思不得其解。 后来在这里找到问题所在链接: 原因是数据类型是object,但是boxplot等绘图函数只接收数值类型,比如float这种。所以boxplot会认为没有...
  • Square-free division 暴力 素数 题意 n个正整数序列a1-an,先要将它拆分成若干个连续的子序列, 要求:子序列长度为1,或子序列中不存在任何两个元素的乘积为平方数。 且有最多k次机会,可在拆分前将任意的ai...
  • 题目链接: ...Itemid=8&page=show_problem&problem=666 暴力枚举的入门题,难度主要在细节处理上(比如前导0在记录时的处理,还有输出时的处理),就当是输入输出练习了。代码如下: .....
  • : Using / for division is deprecated and will be removed in Dart Sass 2.0.0. Recommendation: math.div($px, $screenWidth) More info and automated migrator: https://sass-lang.com/d/slash-div
  • 官方推荐的codesandbox在线例子 代码地址 效果 使用 yarn add china-division 复制粘贴代码 其他 同理可以使用案例中遍历获得的数据进行其他操作。
  • 错误提示:进行除法运算时,提示ZeroDivisionError: division by zero #juzicode.com/vx:桔子code lst = [5,4,3,2,1,0] for l in lst: b = 10/l print('l=',l,'b=',b) l= 5 b= 2.0 l= 4 b= 2.5 l= 3 b= 3....
  • 一、题目描述 ...Time-division multiplexing (TDM) is a method of transmitting and receiving independent signals over a common signal path by means of synchronized switches at each end of the tran
  • 背景 今天写个带除法的sql脚本,对分母为0的情况做判断后,仍出现了除数为0的报错。简单的Demo如下: select if(total=0,cast(0 as Decimal(30,4)),num/total) as res from ( select cast(1 as Decimal(30,4)) as ...
  • Square division

    2021-10-06 10:15:48
    Problem - E1 - Codeforces 思路:尺取的做法 参考代码 #include<iostream> #include<algorithm> #include<map> using namespace std; const int N = 1e7 + 10; int primes[N], cnt;... fo
  • division by zero "除数是0"导致的错误: 解决方法一、运行前判断 如果除数为0,则不要计算 if ($retrieveLossRefundArr != 0) { $subTime = round($cutTime / $retrieveLossRefundArr); } 解决方法二、使用@符号 ...
  • 我从一个csv读取数据,然后循环,然后我想除以平均值来规范化它,但得到一个警告。代码是:A = genfromtxt("train.txt", delimiter=';', skip_header=1)lowid = A[:,1].min(axis=0)highid = A[:,1].max(axis=0)X = ...
  • 关于DEPRECATION WARNING: Using / for division is deprecated and will be removed in Dart Sass 2.0.0. 的解决办法解决办法问题sass官方解释 解决办法 因为Dart sass 新版本目弃用“/”的用法,sass自定义element...
  • 这类错误是除0错误,即分母为0的错误 a = [-1, -2, 0, 1, 2, 3, 4, 5] for i in a: print(5/i) 此时虽然报错但是可以得到前俩个的得数,因为,我们遍历列表的时候一个数分母会为0,而其他的却不会 ...
  • Deprecation Warning: Using / for division outside of calc() is deprecated and will be removed in Dart Sass 2.0.0. npm run dev后 出现以下警告 因为 sass 新版本目弃用“/”的用法,sass自定义element ...
  • 解决 指定除法保留的小数点位数以及四舍五入的方式 如下是保留两位小数、向上取整的除法 BigDecimal nowSales = new BigDecimal("23.01"); BigDecimal preSales= new BigDecimal("15.07"); BigDecimal sp = nowSales...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 92,135
精华内容 36,854
关键字:

division

友情链接: 2011Ryysz2b.rar