python为什么虚部是j不是i_Python基础02 基本数据类型
簡單的數據類型以及賦值
變量不需要聲明
Python的變量不需要聲明,你可以直接輸入:
>>>a = 10
那么你的內存里就有了一個變量a, 它的值是10,它的類型是integer (整數)。 在此之前你不需要做什么特別的聲明,而數據類型是Python自動決定的。
>>>print(a)
>>>print(type(a))
那么會有如下輸出:
10
這里,我們學到一個內置函數type(), 用以查詢變量的類型。
回收變量名
如果你想讓a存儲不同的數據,你不需要刪除原有變量就可以直接賦值。
>>>a = 1.3
>>>print(a,type(a))
會有如下輸出
1.3
我們看到print的另一個用法,也就是print后跟多個輸出,以逗號分隔。
基本數據類型
a=10??? # int 整數
a=1.3??????? # float 浮點數
a=True?????? # 真值 (True/False)
a='Hello!'?? # 字符串。字符串也可以用雙引號。
以上是最常用的數據類型。此外還有分數,字符,復數等其他類型,有興趣的可以學習一下。
總結
變量不需要聲明,不需要刪除,可以直接回收適用。
type(): 查詢數據類型
整數,浮點數,真值,字符串
如果你喜歡這篇文章,歡迎推薦。
技術推動進步,分享促進社區。
posted @ 2012-05-28 20:05 Vamei 閱讀(115991) 評論(27) 編輯 收藏評論列表
??回復引用
#1樓 2012-11-22 19:58 Raining Days ?
我是初學者,畢竟要畢業了多學一點十一點,之前一直是c/c++的編程,也有參加過相應的比賽。這陣子不是特別忙,就想學點什么。之后再在博主這里學學linux。我是剛來看的,這么說的話,在python里面可以隨心所欲的定義數據,而且它會自動分配一個合適的數據類型給你,一個變量,可以是多種類型了吧。支持(0)反對(1)http://pic.cnblogs.com/face/397161/20130507205142.png
??回復引用
#2樓 2012-11-22 20:00 Raining Days ?
我剛才有試過a=-1/5,可是輸出來的a=-1,而且我試過a=-2i+3,想要輸出發現有錯誤,求博主解釋一下。支持(0)反對(0)http://pic.cnblogs.com/face/397161/20130507205142.png??回復引用
#3樓[樓主] 2012-11-22 20:26 Vamei ?
@Raining Days
第一個問題:
因為兩個參與運算的數字都是整數,所以它默認結果為整數。
你可以嘗試 a = -1.0/5 或者 a = -1/5.0。由于參與運算中有一個是浮點數,所以整數會轉換成更高精度的浮點數,再進行運算。
你也可以嘗試 a = -float(1)/5,原理一樣。
第二個問題,虛部是j,不是i
>>> a = 3 - 2j
>>> b = 2 + 1j
>>> a + b
(5-1j)
??回復引用
#4樓[樓主] 2012-11-22 20:27 Vamei ?
@Raining Days
關于動態類型,你可以查看后面的教程中的介紹。
??回復引用
#5樓 2012-12-06 00:28 fz420 ?
你好, 博主,python 變量不需要聲明
為什么下載這段代碼中的 a 要先定義呢??支持(0)反對(0)
??回復引用
#6樓[樓主] 2012-12-06 10:04 Vamei ?
@fz420
是不需要聲明類型。可你用在if判斷里面,這個a總要是個什么東西吧,不然如何拿一個“虛無”的東西去做判斷呢?
??回復引用
#7樓 2012-12-06 13:18 fz420 ?
@Vamei
我覺得 if 與 for 的情況是相同的, 但是 for 可以執行不報錯
??回復引用
#8樓[樓主] 2012-12-06 13:34 Vamei ?
@fz420
當然不一樣了。
for是把iterator生成的值賦予給a,然后再使用a。
if沒有賦值這一步
??回復引用
#9樓 2013-07-02 16:23 boke_hh ?
@Vamei
@Raining Days的第一個問題應該是3.0版本以下中出現的,3.0以上的版本中得到的值為-0.2。不需要考慮運算符前后元素的類型
??回復引用
#10樓[樓主] 2013-07-02 19:48 Vamei ?
@boke_hh
我之前還沒有考慮過版本的問題,不錯!
??回復引用
#11樓 2013-07-03 18:35 boke_hh ?
@Vamei
博主,那個import怎么用啊,還有一些內置函數,查了下資料,還是不太明白
??回復引用
#12樓 2013-07-04 10:29 jinghuali ?
@boke_hh
import就是導入你需要的模塊
??回復引用
#13樓 2014-03-14 21:40 山之巔 ?
我有兩個問題,一個是上一篇的問題,一起問了吧1.我知道Linux的目錄結構有樹的概念,可以一直相對路徑/找到文件,但是我用的windows,例如如果我安裝在C盤,但是我在F盤建立了一個存放腳本的文件目錄python script,建立了一個hello.py,我怎樣通過命令執行這個腳本文件hello.py
2.9樓的說過得到的值是-0.2,這說明python默認把-1/2的-1當做float類型了,但是如果我現在想獲得c語言中的-1/2的值,應該是0,我改成(int)-1/2或者-(int)1/2為什么都會報錯,另外怎么實現像c語言一樣支持(0)反對(0)
??回復引用
#14樓[樓主] 2014-03-14 22:52 Vamei ?
@山之巔
第一個問題,可以加上絕對路徑執行。
第二個問題,你試試int(1)/int(2)?
??回復引用
#15樓 2014-03-17 20:25 山之巔 ?
1.我上網查了,可以通過cmd中f:\python script>C:\Python33\python.exe hello.py這樣才能執行,但是這樣必須切換到腳本所在的目錄,如果我想直接在python shell中執行呢?像這樣>>> f:\python script\hello.py,就報錯了SyntaxError: invalid syntax(:會變成紅色),怎樣才能在shell中直接執行?2.print(1/2);和print(int(1)/int(2));的答案都是0.5,看來是不行了?支持(0)反對(0)
??回復引用
#16樓[樓主] 2014-03-17 20:29 Vamei ?
@山之巔
1. 還真不知道能不能在Python內部運行Python腳本。應該有一些特殊方法可以做到,比如利用os包里的功能,運行外部命令?
2. 似乎徹底改掉了。我還在用2.7,所以無法復制你說的效果。
??回復引用
#17樓 2014-03-27 14:25 Triangle23 ?
關于進制表示能否講一下,如2**010=256,2**10=1024,謝謝支持(0)反對(0)http://pic.cnblogs.com/face/u300489.jpg?id=14181149??回復引用
#18樓 2014-08-08 17:43 東籬雪 ?
@Triangle23
1、2010中的 010表示的是八進制,實際就是 010(八進制)= 18^1 + 08^0 = 8(十進制);
2、210中的10就是十進制當中的10;
3、所以:
2010 = 2^8 = 256;
210 = 2^10 = 1024;
4、關于進制的表示:
十進制:生活中最常用的;0,1,2...
十二進制:鐘表的時針;
六十進制:鐘表的分針和秒針;
二進制:101010101011(零和一表示),互聯網最底層的數據表示;
八進制:010,076,... 一般前面無緣無故帶個零的,你就要考慮是不是八進制 了,如果0后面的最大數沒有超過8,那極有可能是八進制表示的數;
十六進制:0x091abcdef ,一般前面帶有0x的,就是十六進制表示的數,0,1,2,3,4,5,6,7,8,9,a,b,c,d,e,f 總共16個字符表示十六進制的數,一般都是計算十六進制轉十進制;計算時,a表示10,b表示11,...,f表示15;IPV6就是用十六進制表示的。
??回復引用
#19樓 2014-09-21 11:27 vagabond1132 ?
@Raining Days
應該是 -1/5.0
因為 默認為int 而不是float輸出
??回復引用
#20樓 2014-09-25 20:18 小馳子 ?
15樓兄弟說的第一個問題,把Python安裝路徑放到環境變量里應該就可以和在shell里一樣直接輸入.py文件支持(0)反對(0)??回復引用
#21樓 2015-01-12 21:51 oblivion ?
b type int為什么b=1/5 輸出0
而 b=-1/5 輸出-1支持(0)反對(0)
??回復引用
#22樓 2015-05-30 17:01 迷途ing ?
b = 1/5 輸出0 都是int型且是正數b = -1/5 輸出 -1 python帶有負數除法是按距離來做除法運算也就-1 到 5的距離是6 6/5 = 1 然后在加上符號-
這一點可驗證?
| 12345 | print -1/5print -10/5print 10/-5print 15/-5print -16/5 |
所以在取模運算時 商的結果會影響取模結果,c/c++ java 是求余支持(1)反對(1)http://pic.cnblogs.com/face/763804/20150530161809.png
??回復引用
#23樓 2015-10-05 10:32 蘇生不惑 ?
@oblivion
整數相除返回的是商
??回復引用
#24樓 2016-01-22 16:55 yeayee ?
第3課已鞏固www.yeayee.com支持(0)反對(0)http://pic.cnblogs.com/face/816924/20170922082617.png??回復引用
#25樓 2016-06-11 16:57 兩只蝸牛 ?
@迷途ing
博主,我感覺 -1 到 5的距離是5 5/5 = 1 然后在加上符號-
0 到 5的距離是4 4/5 = 0 ,不知道我說的對不對,剛看你博客學python
??回復引用
#26樓 2016-10-08 16:33 dao_lee ?
print(type(a))時,python2.x顯示<type 'int'>,python3.x顯示<class 'int'>。支持(0)反對(0)http://pic.cnblogs.com/face/632374/20160511132915.png??回復引用
#27樓39938662018/6/8 10:28:04 2018-06-08 10:28 suyuloying ?
>>> a = 3 - 2j>>> b = 2 + 1j
>>> a + b
(5-1j)
樓主 您好 請問下怎么查到復數是j而不是數學表達式中的i支持(0)反對(0)
總結
以上是生活随笔為你收集整理的python为什么虚部是j不是i_Python基础02 基本数据类型的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 华为mate30国行版多少钱 华为mat
- 下一篇: 基于stm32f429的手写识别_关注智