首页 > 代码库 > Python基础1--变量类型

Python基础1--变量类型

首先,在之前,我不是一个 Python玩家,我只是一个使用者,需要即取,现在,我要认真学习和记录,正确称为一个Python的玩家。

说明,这明显不是教程,是我自己理解并记录的笔记而已。

Python有五个标准的数据类型

  • Numbers(数字)
  • String(字符串)
  • List(列表)
  • Tuple(元组)
  • Dictionary(字典)
数字有四种数值类型:int,long ,float,complex,

例子:a=250 #int

            b=12345678910L #long,也可以小写l结尾,但是很容易混乱,用大写L吧骚年。

            c=0.1               #float

            d=-5.32e10    #float,-5.32*10^10

             e=35.23E-7   #float,35.23*10^-7

             f=2j                 #complex

             g=-1+3j          #complex

             h=8+7e10j    #complex

字符串是由数字、字母、下划线组成的一串字符,和C++基本一样。

str ="pythonissimple"

下标还是从0开始,不像matlab这个“异端”...

取子串很简单,直接起始到结束下一位就可以了,比如print str[6:9],输出的就是iss,也就是输出左闭右开。

也可以用反过来取,作者真是闷骚…比如print str[-5,-1]输出的就是impl.

列表 感觉就像数组,不过一个列表什么都能放。用[]表示列表

比如list1=[1,2,‘python‘,1e-7,3+7i],

取第i个跟c++一样list1[i],比如print list1[2]输出的就是python

取子列表,跟字符串取子串一样,元祖字典什么的是这样取子串的。

值得一提的是,python有+,*分别代表连接两个列表,和重复多少次

比如我与list2=[‘cpp‘,123,‘java‘]

print list1+list2就是[1, 2, ‘python‘, 1e-07, (3+7j), ‘cpp‘, 123, ‘java‘]

print list1*2据是[1, 2, ‘python‘, 1e-07, (3+7j), 1, 2, ‘python‘, 1e-07, (3+7j)]
元祖在我看来,就是一个只读的列表,用()来表示,也就是比如tup1=(1,‘python‘),你不能够tup1[1]=0,列表是可以的。

字典,实际就是一个map映射。字典用"{ }"标识。字典由索引(key)和它对应的值value组成。如果你熟悉stl,这根本就一个道理。

比如 asc2={};asc2[‘a‘]=97,asc2[98]=‘b‘,我们print asc2的结果就是{‘a‘: 97, 98: ‘b‘}

另外,我们也可以直接用声明时候就: acs2={‘a‘: 97, 98: ‘b‘},查询的时候就acs2[‘a‘](弱弱地补充,不能用acs2[‘b‘],这是一个单向映射)

转换:  int(x),float.long类似,

str(x)转换成字符串

list(s),tuple(s)就是将序列s转成列表、元祖。

chr(x),整数转成一个字符,ACSII.

ord(x),与chr成逆操作

hex(x),oct(x)十六禁止,八进制
说到进制,想起C编程专家里有一个笑话

程序员为什么分不清万圣节和圣诞节?(程序员的笑话真心太“有趣”了。。。)

因为Oct31=Dec25,Oct是八进制,Dec是十进制。八进制的31,就是3*8+1=25..

Just have a fun!