python中的數學運算(二)

2021-03-02 python小工具

1、python中有一些類似數學集合的運算,如 或、且、非的關係,對應的運算符有 |,&,-等運算符。這些運算符都是僅限於集合set的操作,也有一定的實用性。

# 創建兩個集合x, y
>>> x = set('spam')
>>> y = {'h', 'a', 'm'}
>>> x, y
({'a', 'p', 'm', 's'}, {'h', 'm', 'a'})

# 對集合求交集,獲取兩個集合共有數據
>>> x & y
{'a', 'm'}

# 對集合求併集,獲取兩個集合擁有的數據
>>> x | y
{'a', 'p', 'm', 's', 'h'}

# 對集合做差
>>> x - y
{'p', 's'}
>>> {x ** 2 for x in [1, 2, 3, 4]}
{16, 1, 4, 9}

需要注意的是此處只能針對集合做操作,換成列表是不行的。

>>> x = list(x)
>>> x
['a', 'p', 'm', 's']
>>> y = list(y)
>>> y
['h', 'm', 'a']
# 此處報錯,直接說明類型不支持
>>> x | y
Traceback (most recent call last):
File "<pyshell#11>", line 1, in <module>
x | y
TypeError: unsupported operand type(s) for |: 'list' and 'list'
>>> x & y
Traceback (most recent call last):
File "<pyshell#12>", line 1, in <module>
x & y
TypeError: unsupported operand type(s) for &: 'list' and 'list'

2、使用decimal模塊控制浮點數精度
(1)使用round函數的一個小弊端

>>> round(3.22, 1)
3.2

# 當使用round函數保留兩位小數時,
# 由於最後一位是0,所以被捨棄,最後僅
# 保留了一位小數,3.20也就成了3.2
>>> round(3.203, 2)
3.2

(2)使用decimal模塊解決上述問題

>>> import decimal
# 構建decimal對象時,注意此處傳參必須是字符
# 如何是小數,還是會出現精度問題
>>> deci = decimal.Decimal('3.20')

# 使用quantize方法,構造精度,此處是小數點後保留兩位
# 返回對象依舊為decimal對象
>>> res = deci.quantize(decimal.Decimal('0.00'))
>>> res
Decimal('3.20')
# 獲取字符
>>> res.to_eng_string()
'3.20'

哈哈,以上就是Python小工具關於數學中的一些運算,有興趣歡迎關注python小工具。

相關焦點

  • 什麼是運算符和表達式,在python中是如何處理數學運算的?
    又到了和大家分享的時刻了,初識python,相信很多編程愛好者們對程序的解義在心裡應該有一個概念了吧,對於pycharm的用法與進位的認知,在大家的心裡是否還有印象?前面我們提到了python的核心數據(整數型、浮點型、複數等),那麼大家是否知道,這些數據是用來幹什麼的呢?
  • Python編程基礎,數字及數學運算
    慢步越來越喜歡看「官網」了,一本python的二級教材大略看完,架構有了,發現還有很多細節沒有,網上各種網站找太複雜,這不,還是官網好。慢步去看了python的官網,純英文這個閱讀會比較難受,但收穫還是有很多的。發現了很多二級教材中沒有的細項內容。
  • 【Python 第53課】 數學運算
    今天從打飛機遊戲裡中斷一下,說些python的基礎。python的數學運算模塊叫做math,再用之前,你需要import mathmath包裡有兩個常量:math.pi圓周率π:3.141592...math.e自然常數:2.718281...
  • python教程之python數學運算
    中進行分數(fraction)運算分數運算是python中的一個模塊(module)。#對分數進行運算>>> Fraction(2,8)+1+1.52.75運算中如果出現float數據類型,最終的結果將是float類型數據。
  • python運算符優先級,加減乘除只是基礎,學習python第2天
    在計算機編程中少不了運算,而python運算符有哪些呢?python運算符優先級順序又是怎麼樣的?就像數學一樣,加減乘除只是基礎,了解python運算符才能解決實際性的問題。python運算符及其優先級python運算符及其優先級python程序中支持多種運算符,常見的有加減乘除、賦值運算符、算術運算符、邏輯運算符
  • Python數學運算入門把Python當作計算器
    1、Numbers 用Python做算術運算The interpreter acts as a simple calculator: you can type an expression at it and it will write the value.
  • 二、Python基礎數據類型、變量、常量
    二、Python基礎數據類型、變量、常量1.變量:把程序運行的中間結果臨時的存在內存中,以便後續的代碼調用變量不僅可以是數組,還可以是任意數據類型。在程序中,變量就是用一個變量名表示,變量名必須是大小寫英文、數字、和『_』下劃線組合,並且不能以數字開頭。
  • Python學習第116課——numpy.dot和矩陣相乘的數學運算
    【每天幾分鐘,從零入門python編程的世界!】因此矩陣的數學原理也是非常重要的,感興趣的話可以去看看。現在我們只做一些最簡單的演示,如果現在對矩陣了解的不是很深入也沒關係,也沒有必要在現在的階段花很大精力去學習,我們後面的學習中會不斷的去重複和推演。現在先掌握最基礎的東西,然後在numpy中知道怎麼用矩陣相乘的方法去計算就可以了。
  • Python中的數字類型格式與運算
    int2+2)))result = (int1+int2)*(int1-int2)/7-2print('加減乘除混合運算:%d'%(result))在加減乘除混合運算可以看出,Python運算也存在優先級,小括號裡邊的最先運算,然後進行乘除運算,在進行加減運算,與數學中的運算優先級是相同的。
  • Python中的數據類型
    本期我們主要分享Python中,能夠直接處理的、常見的四種數據類型:1.整數(int)python可以處理任意大小的整數,當然包括負整數,在python程序中,整數的表示方法和數學上的寫法一模一樣,例如:1,100,-8080,0,等等。
  • python運算符總結
    python算術運算符加減乘除是最基本的數學規則,python中當然不能忽視。我們通過交互式解釋器來演示。在cmd命令行下,輸入python回車,即可打開交互式窗口。,如果不使用分數,則會出現有餘數的情況,數學裡,通常表示如下:數學中的餘數python裡,提供 % 符號用於取餘數
  • python快速教程之四則運算
    python的四則運算無非也就是我們小學所學習的加(+)減(-)乘(*)除(/)冪(**),不過在python裡面多了一個取餘(%)運算!python的加法運算如果對於數字對你來說絕對沒有問題,在這裡要說明的是加法同樣適用字符串.
  • 慢步學習,二級python,數字類型及其運算
    慢步學習,備考二級python語言,程序的基本語法元素咱可以回到數學的課堂。咱從數字學起,1+1=2,這是整數。然後把一個西瓜分兩份,一個人吃一半,你0.5,我0.5,這是小數,在程式語言裡面叫浮點數。最後到科學計算的複數,例如3+5i,有實數部分3,和虛數部分5i。整數 就是我們常用的數字,不帶小數的數字。
  • python-邏輯運算和布爾值
    python-邏輯運算和布爾值喬治·布爾(George Boole,1815.11.2~1864),1815年11月2日生於英格蘭的林肯。19世紀最重要的數學家之一,出版了《邏輯的數學分析》 ,這是它對符號邏輯諸多貢獻中的第一次。
  • Python編程5:Python中的數字和數學運算
    Python中的數值類型1、數字型Python中最主要和最常用的兩種數字類型是整數和浮點數。如圖1所示,我們在Python的IDLE中寫下True、TRUE、true這三個單詞,會發現True會變成橘黃色,而另兩個依然是黑色,這說明True是Python中自帶的,是正確的布爾值。
  • 【python勸退指南】小學數學老師喊你回來用python學代數!
    首先是 x,y,z 在這裡統稱為變量,也就是我們中學數學中所學的代數。我們都知道代數可以是 x,y,z 這樣的字母,也可以是其他的字母,例如 i,j,k 等,這些都是我們常用到的代數符號。
  • Python學習第114課——numpy中ndarray的四則運算
    【每天幾分鐘,從零入門python編程的世界!】我們為什麼要學習numpy?numpy其實就是number+Python的簡寫,意思就是通過Python對數據進行處理。這節我們學習numpy中數組的一些基本的四則運算。●numpy中數組的加法運算我們首先生成x和y兩個float類型的數組,然後把它們進行相加。
  • Python時間運算的詳細機制初探討
    codewars四級段位不斷刷題中。博客地址:http://coderselftrain.com/archives/本篇共2部分,上篇我們初步探討Python時間運算的機制,下篇為一句話快速運用Python的datetime進行時間運算的技巧。
  • Python中的數學模塊:Math和Cmath
    Python部落(python.freelycode.com)組織翻譯,禁止轉載,歡迎轉發。
  • 如何使用python完成數學建模常見算法
    在數學建模中主流的程式語言是MATLAB,但隨著python/R中數學軟體包的不斷完善,熟悉這兩種程式語言的同學也可以快速數學建模的編程環節。後面我們將介紹幾種常見數學建模算法的python實現,旨在展示python在本領域的強大威力。