精华内容
下载资源
问答
  • 目录1、字符串2、布尔类型3、整数4、浮点数5、数字6、列表7、元组8、字典9、日期1、字符串1.1、如何在Python中使用字符串a、使用单引号(')用单引号括起来表示字符串,例如:str='this is string';print str;b、使用...

    目录

    1、字符串

    2、布尔类型

    3、整数

    4、浮点数

    5、数字

    6、列表

    7、元组

    8、字典

    9、日期

    1、字符串

    1.1、如何在Python中使用字符串

    a、使用单引号(')

    用单引号括起来表示字符串,例如:

    str='this is string';

    print str;

    b、使用双引号(")

    双引号中的字符串与单引号中的字符串用法完全相同,例如:

    str="this is string";

    print str;

    c、使用三引号(''')

    利用三引号,表示多行的字符串,可以在三引号中自由的使用单引号和双引号,例如:

    str='''this is string

    this is pythod string

    this is string'''

    print str;

    2、布尔类型

    bool=False;

    print bool;

    bool=True;

    print bool;

    3、整数

    int=20;

    print int;

    4、浮点数

    float=2.3;

    print float;

    5、数字

    包括整数、浮点数。

    5.1、删除数字对象引用,例如:

    a=1;

    b=2;

    c=3;

    del a;

    del b, c;

    #print a; #删除a变量后,再调用a变量会报错

    5.2、数字类型转换

    48304ba5e6f9fe08f3fa1abda7d326ab.png

    int(x [,base]) 将x转换为一个整数

    float(x ) 将x转换到一个浮点数

    complex(real [,imag]) 创建一个复数

    str(x) 将对象x转换为字符串

    repr(x) 将对象x转换为表达式字符串

    eval(str) 用来计算在字符串中的有效Python表达式,并返回一个对象

    tuple(s) 将序列s转换为一个元组

    list(s) 将序列s转换为一个列表

    chr(x) 将一个整数转换为一个字符

    unichr(x) 将一个整数转换为Unicode字符

    ord(x) 将一个字符转换为它的整数值

    hex(x) 将一个整数转换为一个十六进制字符串

    oct(x) 将一个整数转换为一个八进制字符串

    48304ba5e6f9fe08f3fa1abda7d326ab.png

    5.3、数学函数

    48304ba5e6f9fe08f3fa1abda7d326ab.png

    abs(x) 返回数字的绝对值,如abs(-10) 返回 10

    ceil(x) 返回数字的上入整数,如math.ceil(4.1) 返回 5

    cmp(x, y) 如果 x < y 返回 -1, 如果 x == y 返回 0, 如果 x > y 返回 1

    exp(x) 返回e的x次幂(ex),如math.exp(1) 返回2.718281828459045

    fabs(x) 返回数字的绝对值,如math.fabs(-10) 返回10.0

    floor(x) 返回数字的下舍整数,如math.floor(4.9)返回 4

    log(x) 如math.log(math.e)返回1.0,math.log(100,10)返回2.0

    log10(x) 返回以10为基数的x的对数,如math.log10(100)返回 2.0

    max(x1, x2,...) 返回给定参数的最大值,参数可以为序列。

    min(x1, x2,...) 返回给定参数的最小值,参数可以为序列。

    modf(x) 返回x的整数部分与小数部分,两部分的数值符号与x相同,整数部分以浮点型表示。

    pow(x, y) x**y 运算后的值。

    round(x [,n]) 返回浮点数x的四舍五入值,如给出n值,则代表舍入到小数点后的位数。

    sqrt(x) 返回数字x的平方根,数字可以为负数,返回类型为实数,如math.sqrt(4)返回 2+0j

    48304ba5e6f9fe08f3fa1abda7d326ab.png

    6、列表

    6.1、初始化列表,例如:

    list=['physics', 'chemistry', 1997, 2000];

    nums=[1, 3, 5, 7, 8, 13, 20];

    6.2、访问列表中的值,例如:

    48304ba5e6f9fe08f3fa1abda7d326ab.png

    '''nums[0]: 1'''

    print "nums[0]:", nums[0]

    '''nums[2:5]: [5, 7, 8] 从下标为2的元素切割到下标为5的元素,但不包含下标为5的元素'''

    print "nums[2:5]:", nums[2:5]

    '''nums[1:]: [3, 5, 7, 8, 13, 20] 从下标为1切割到最后一个元素'''

    print "nums[1:]:", nums[1:]

    '''nums[:-3]: [1, 3, 5, 7] 从最开始的元素一直切割到倒数第3个元素,但不包含倒数第三个元素'''

    print "nums[:-3]:", nums[:-3]

    '''nums[:]: [1, 3, 5, 7, 8, 13, 20] 返回所有元素'''

    print "nums[:]:", nums[:]

    48304ba5e6f9fe08f3fa1abda7d326ab.png

    6.3、更新列表,例如:

    nums[0]="ljq";

    print nums[0];

    6.4、删除列表元素

    del nums[0];

    '''nums[:]: [3, 5, 7, 8, 13, 20]'''

    print "nums[:]:", nums[:];

    6.5、列表脚本操作符

    列表对+和*的操作符与字符串相似。+号用于组合列表,*号用于重复列表,例如:

    print len([1, 2, 3]); #3

    print [1, 2, 3] + [4, 5, 6]; #[1, 2, 3, 4, 5, 6]

    print ['Hi!'] * 4; #['Hi!', 'Hi!', 'Hi!', 'Hi!']

    print 3 in [1, 2, 3] #True

    for x in [1, 2, 3]: print x, #1 2 3

    6.6、列表截取

    L=['spam', 'Spam', 'SPAM!'];

    print L[2]; #'SPAM!'

    print L[-2]; #'Spam'

    print L[1:]; #['Spam', 'SPAM!']

    6.7、列表函数&方法

    48304ba5e6f9fe08f3fa1abda7d326ab.png

    list.append(obj) 在列表末尾添加新的对象

    list.count(obj) 统计某个元素在列表中出现的次数

    list.extend(seq) 在列表末尾一次性追加另一个序列中的多个值(用新列表扩展原来的列表)

    list.index(obj) 从列表中找出某个值第一个匹配项的索引位置,索引从0开始

    list.insert(index, obj) 将对象插入列表

    list.pop(obj=list[-1]) 移除列表中的一个元素(默认最后一个元素),并且返回该元素的值

    list.remove(obj) 移除列表中某个值的第一个匹配项

    list.reverse() 反向列表中元素,倒转

    list.sort([func]) 对原列表进行排序

    48304ba5e6f9fe08f3fa1abda7d326ab.png

    7、元组(tuple)

    Python的元组与列表类似,不同之处在于元组的元素不能修改;元组使用小括号(),列表使用方括号[];元组创建很简单,只需要在括号中添加元素,并使用逗号(,)隔开即可,例如:

    tup1 = ('physics', 'chemistry', 1997, 2000);

    tup2 = (1, 2, 3, 4, 5 );

    tup3 = "a", "b", "c", "d";

    创建空元组,例如:tup = ();

    元组中只有一个元素时,需要在元素后面添加逗号,例如:tup1 = (50,);

    元组与字符串类似,下标索引从0开始,可以进行截取,组合等。

    7.1、访问元组

    tup1 = ('physics', 'chemistry', 1997, 2000);

    #tup1[0]: physics

    print "tup1[0]: ", tup1[0]

    #tup1[1:5]: ('chemistry', 1997)

    print "tup1[1:5]: ", tup1[1:3]

    7.2、修改元组

    元组中的元素值是不允许修改的,但我们可以对元组进行连接组合,例如:

    tup1 = (12, 34.56);

    tup2 = ('abc', 'xyz');

    # 以下修改元组元素操作是非法的。

    # tup1[0] = 100;

    # 创建一个新的元组

    tup3 = tup1 + tup2;

    print tup3; #(12, 34.56, 'abc', 'xyz')

    7.3、删除元组

    元组中的元素值是不允许删除的,可以使用del语句来删除整个元组,例如:

    tup = ('physics', 'chemistry', 1997, 2000);

    print tup;

    del tup;

    7.4、元组运算符

    与字符串一样,元组之间可以使用+号和*号进行运算。这就意味着他们可以组合和复制,运算后会生成一个新的元组。

    cb49764ea97d76847be38c1e9b472f74.png

    7.5、元组索引&截取

    L = ('spam', 'Spam', 'SPAM!');

    print L[2]; #'SPAM!'

    print L[-2]; #'Spam'

    print L[1:]; #['Spam', 'SPAM!']

    7.6、元组内置函数

    cmp(tuple1, tuple2) 比较两个元组元素。

    len(tuple) 计算元组元素个数。

    max(tuple) 返回元组中元素最大值。

    min(tuple) 返回元组中元素最小值。

    tuple(seq) 将列表转换为元组。

    8、字典

    8.1、字典简介

    字典(dictionary)是除列表之外python中最灵活的内置数据结构类型。列表是有序的对象结合,字典是无序的对象集合。两者之间的区别在于:字典当中的元素是通过键来存取的,而不是通过偏移存取。

    字典由键和对应的值组成。字典也被称作关联数组或哈希表。基本语法如下:

    dict = {'Alice': '2341', 'Beth': '9102', 'Cecil': '3258'};

    也可如此创建字典:

    dict1 = { 'abc': 456 };

    dict2 = { 'abc': 123, 98.6: 37 };

    每个键与值必须用冒号隔开(:),每对用逗号分割,整体放在花括号中({})。键必须独一无二,但值则不必;值可以取任何数据类型,但必须是不可变的,如字符串,数或元组。

    8.2、访问字典里的值

    #!/usr/bin/python

    dict = {'name': 'Zara', 'age': 7, 'class': 'First'};

    print "dict['name']: ", dict['name'];

    print "dict['age']: ", dict['age'];

    8.3、修改字典

    向字典添加新内容的方法是增加新的键/值对,修改或删除已有键/值对如下实例:

    48304ba5e6f9fe08f3fa1abda7d326ab.png

    #!/usr/bin/python

    dict = {'name': 'Zara', 'age': 7, 'class': 'First'};

    dict["age"]=27; #修改已有键的值

    dict["school"]="wutong"; #增加新的键/值对

    print "dict['age']: ", dict['age'];

    print "dict['school']: ", dict['school'];

    48304ba5e6f9fe08f3fa1abda7d326ab.png

    8.4、删除字典

    del dict['name']; # 删除键是'name'的条目

    dict.clear(); # 清空词典所有条目

    del dict ; # 删除词典

    例如:

    #!/usr/bin/python

    dict = {'name': 'Zara', 'age': 7, 'class': 'First'};

    del dict['name'];

    #dict {'age': 7, 'class': 'First'}

    print "dict", dict;

    注意:字典不存在,del会引发一个异常

    8.5、字典内置函数&方法

    48304ba5e6f9fe08f3fa1abda7d326ab.png

    cmp(dict1, dict2) 比较两个字典元素。

    len(dict) 计算字典元素个数,即键的总数。

    str(dict) 输出字典可打印的字符串表示。

    type(variable) 返回输入的变量类型,如果变量是字典就返回字典类型。

    radiansdict.clear() 删除字典内所有元素

    radiansdict.copy() 返回一个字典的浅复制

    radiansdict.fromkeys() 创建一个新字典,以序列seq中元素做字典的键,val为字典所有键对应的初始值

    radiansdict.get(key, default=None) 返回指定键的值,如果值不在字典中返回default值

    radiansdict.has_key(key) 如果键在字典dict里返回true,否则返回false

    radiansdict.items() 以列表返回可遍历的(键, 值) 元组数组

    radiansdict.keys() 以列表返回一个字典所有的键

    radiansdict.setdefault(key, default=None) 和get()类似, 但如果键不已经存在于字典中,将会添加键并将值设为default

    radiansdict.update(dict2) 把字典dict2的键/值对更新到dict里

    radiansdict.values() 以列表返回字典中的所有值

    48304ba5e6f9fe08f3fa1abda7d326ab.png

    9、日期和时间

    9.1、获取当前时间,例如:

    import time, datetime;

    localtime = time.localtime(time.time())

    #Local current time : time.struct_time(tm_year=2014, tm_mon=3, tm_mday=21, tm_hour=15, tm_min=13, tm_sec=56, tm_wday=4, tm_yday=80, tm_isdst=0)

    print "Local current time :", localtime

    说明:time.struct_time(tm_year=2014, tm_mon=3, tm_mday=21, tm_hour=15, tm_min=13, tm_sec=56, tm_wday=4, tm_yday=80, tm_isdst=0)属于struct_time元组,struct_time元组具有如下属性:

    79f346322ca62f0105e5e032096656fc.png

    9.2、获取格式化的时间

    可以根据需求选取各种格式,但是最简单的获取可读的时间模式的函数是asctime():

    2.1、日期转换为字符串

    首选:print time.strftime('%Y-%m-%d %H:%M:%S');

    其次:print datetime.datetime.strftime(datetime.datetime.now(), '%Y-%m-%d %H:%M:%S')

    最后:print str(datetime.datetime.now())[:19]

    2.2、字符串转换为日期

    expire_time = "2013-05-21 09:50:35"

    d = datetime.datetime.strptime(expire_time,"%Y-%m-%d %H:%M:%S")

    print d;

    9.3、获取日期差

    48304ba5e6f9fe08f3fa1abda7d326ab.png

    oneday = datetime.timedelta(days=1)

    #今天,2014-03-21

    today = datetime.date.today()

    #昨天,2014-03-20

    yesterday = datetime.date.today() - oneday

    #明天,2014-03-22

    tomorrow = datetime.date.today() + oneday

    #获取今天零点的时间,2014-03-21 00:00:00

    today_zero_time = datetime.datetime.strftime(today, '%Y-%m-%d %H:%M:%S')

    #0:00:00.001000

    print datetime.timedelta(milliseconds=1), #1毫秒

    #0:00:01

    print datetime.timedelta(seconds=1), #1秒

    #0:01:00

    print datetime.timedelta(minutes=1), #1分钟

    #1:00:00

    print datetime.timedelta(hours=1), #1小时

    #1 day, 0:00:00

    print datetime.timedelta(days=1), #1天

    #7 days, 0:00:00

    print datetime.timedelta(weeks=1)

    48304ba5e6f9fe08f3fa1abda7d326ab.png

    9.4、获取时间差

    48304ba5e6f9fe08f3fa1abda7d326ab.png

    #1 day, 0:00:00

    oneday = datetime.timedelta(days=1)

    #今天,2014-03-21 16:07:23.943000

    today_time = datetime.datetime.now()

    #昨天,2014-03-20 16:07:23.943000

    yesterday_time = datetime.datetime.now() - oneday

    #明天,2014-03-22 16:07:23.943000

    tomorrow_time = datetime.datetime.now() + oneday

    注意时间是浮点数,带毫秒。

    那么要获取当前时间,需要格式化一下:

    print datetime.datetime.strftime(today_time, '%Y-%m-%d %H:%M:%S')

    print datetime.datetime.strftime(yesterday_time, '%Y-%m-%d %H:%M:%S')

    print datetime.datetime.strftime(tomorrow_time, '%Y-%m-%d %H:%M:%S')

    48304ba5e6f9fe08f3fa1abda7d326ab.png

    9.5、获取上个月最后一天

    last_month_last_day = datetime.date(datetime.date.today().year,datetime.date.today().month,1)-datetime.timedelta(1)

    9.6、字符串日期格式化为秒数,返回浮点类型:

    expire_time = "2013-05-21 09:50:35"

    d = datetime.datetime.strptime(expire_time,"%Y-%m-%d %H:%M:%S")

    time_sec_float = time.mktime(d.timetuple())

    print time_sec_float

    9.7、日期格式化为秒数,返回浮点类型:

    d = datetime.date.today()

    time_sec_float = time.mktime(d.timetuple())

    print time_sec_float

    9.8、秒数转字符串

    time_sec = time.time()

    print time.strftime("%Y-%m-%d %H:%M:%S", time.localtime(time_sec))

    展开全文
  • 1.数字(int)数字又分整型和浮点型,在python中声明变量是不用声明所以自己就会识别a = 10 #整型a1 = 1.24 #浮点型支持科学计数法,将10用e来代替2.字符串(str)在python中用引号引起来就是字符串,而且单引号和双...

    1.数字(int)

    数字又分整型和浮点型,在python中声明变量是不用声明所以自己就会识别

    a = 10 #整型

    a1 = 1.24 #浮点型

    支持科学计数法,将10用e来代替

    2.字符串(str)

    在python中用引号引起来的就是字符串,而且单引号和双引号并没有什么区别

    a = "string"

    a1 = ‘string‘

    a2 = ‘123‘

    字符串是不可变对象,即一旦在内存中创建不可修改,如果修改或连接字符串会重新开辟空间

    a = "string"a.replace("s","b")

    在这种情况下我们替换了a中的”s“ ,在python解释器中会输出 "btring",但是当我们print(a) 时我们会发现还是输出“string”,也就是说a并没有变

    在字符串,我们需要记住一些常用的方法

    "_".join()

    test = "hello"r= "_".join(test); #以“_"方式连接

    print(r)

    h_e_l_l_o

    split()

    test = "hello"r= test.split("e")#将字符串以e来分开print(r)

    [‘h‘, ‘llo‘]

    find()

    test = "hello"r1= test.find("l") #查找到”l“的第一个位置

    r2 = test.find("l",3) #从位置3开始

    print(r1,r2)2 3

    strip()

    test = "hello"

    print(test)

    r=test.strip()#去掉字符串两边的空格print(r)

    hello

    hello

    upper()

    test = "hello"r=test.upper()#将字母大写print(r)

    HELLO

    lower()

    test = "HELLO"r= test.lower()#将字母小写 casefold 可以达到相同的效果而且,功能更强大

    print(r)

    hello

    replace

    test = "hello"r= test.replace("l","a")#将l 替换为aprint(r)

    heaao

    索引

    test = "hello"v= test[0] #以下标索引

    v1 = test[0:2] #切片v2 = test[0:-1] #在此0位可以取到,-1位不可取,即这个切片的取值范围为 0<=

    print(v,v1)

    h he

    len

    test = "hello"

    print(len(test)) #在python3中len为获取字符串长度在python中 len为获取字节长度(字节长度会根据编码来确定)

    5

    注:

    len 和 join还可用于其他数据类型

    例如:list

    3.列表(list)

    列表就是数组的概念,list是一个有序的集合,它是可变的可以随意删除和增加

    a = ["liu","yong"] #一维数组

    b = [ "liu",["zhang","li"],"yong"] #二维数组

    可以a[0],a[-1],负数就是从后边索引

    列表索引是从0开始的依旧是说列表的第一位是0位

    在列表中有一些常用的方法

    append()

    a = ["liu","yong"]

    a.append("nihao") #在最后边添加

    print(a)

    [‘liu‘, ‘yong‘, ‘nihao‘]

    insert()

    a = ["liu","yong"]

    a.insert(1,"wo") #在指定位置添加

    print(a)

    [‘liu‘, ‘wo‘, ‘yong‘]

    pop()

    a = ["liu","yong"]

    a.pop()#删除最后一位

    print(a)a.pop(0) #删除指定位置

    print(a)

    [‘liu‘]

    ["yong"]

    替换

    a = ["liu","yong"]

    a[0]= "wo" #指定位置替换

    print(a)

    [‘wo‘, ‘yong‘]

    z4.元组(touple)

    元组和list类似不过区别在于元组一旦定义不可以在改变

    a = ("ni","hao")

    但是如果元组内包含list是list依旧可变,但是元组依旧是不可变,我们对于可变和不可变可以理解为内存指向,如果一个元组指向一个list那么不论list内部如何变化list在内存中的位置不会改变

    注:

    元组外层可以使用括号,也可以不使用

    在定义单一元组时必须这样定义

    a = (1,)

    5.字典(dic)

    字典相当于map 在dic中会有一个key和一个value但是在python中的dic简化了map

    a = {"liu":99,"li":85}print(a["liu"])#取值如果所取的key不存在直接报错

    print(a.get("liu")) #取值如果不存在返回none

    a["nihao"] = 100 #向dic中存值

    “li” in a #判断li是否存在a中

    1、cmp(dict1, dict2):比较两个字典元素。

    2、len(dict):计算字典元素个数,即键的总数。

    3、str(dict):输出字典可打印的字符串表示。

    4、type(variable):返回输入的变量类型,如果变量是字典就返回字典类型。

    5、d.pop(“key“)删除键

    1、radiansdict.clear():删除字典内所有元素

    2、radiansdict.copy():返回一个字典的浅复制

    3、radiansdict.fromkeys():创建一个新字典,以序列seq中元素做字典的键,val为字典所有键对应的初始值

    4、radiansdict.get(key, default=None):返回指定键的值,如果值不在字典中返回default值

    5、radiansdict.has_key(key):如果键在字典dict里返回true,否则返回false

    6、radiansdict.items():以列表返回可遍历的(键, 值) 元组数组

    7、radiansdict.keys():以列表返回一个字典所有的键

    8、radiansdict.setdefault(key, default=None):和get()类似, 但如果键不已经存在于字典中,将会添加键并将值设为default

    9、radiansdict.update(dict2):把字典dict2的键/值对更新到dict里

    10、radiansdict.values():以列表返回字典中的所有值

    展开全文
  • Python ,变量就是变量,它没有类型,我们所说类型”是变量所指内存对象的类型。等号(=)运算符左边是一个变量名,等号(=)运算符右边是存储变量中的值。如1 name = "garrett" # 字符串变量2 count = ...

    python 中的变量不需要声明。每个变量在使用前都必须赋值,变量赋值以后该变量才会被创建。

    在 Python 中,变量就是变量,它没有类型,我们所说的”类型”是变量所指的内存中对象的类型。

    等号(=)运算符左边是一个变量名,等号(=)运算符右边是存储在变量中的值。如

    1 name = "garrett" # 字符串变量

    2 count = 123 # 整形变量

    3 miles = 100.0 # 浮点型变量

    也可以多个变量同时赋值:

    1 n1 = n2 = n3 = 100

    2 a = b = c = 1, 2, "We"

    Python3下的标准数据类型

    数据用来表示状态,不同的状态应该用不同的类型数据来表示。

    1.Number(数字)

    2.String(字符串)

    3.List(列表)

    4.Tuple(元组)

    5.Set(集合)

    6.Dictionary(字典)

    不可变的数据类型(可hash):Number,String,Tuple

    可变数据类型(不可hash):List,Dictionary,Set

    数据类型的判断可以用type()函数或者isinstance()函数来判断(推荐用后者):

    1 a=123

    2 b="123"

    3 print(type(a),type(b))#结果是

    4 print(isinstance(a,int))#结果是True

    两者的差异见:https://www.runoob.com/python/python-func-isinstance.html

    Number(数字)

    Python支持四种不同的数字类型:

    int(长整型)

    float(浮点型)

    complex(复数)

    bool(布尔型)

    int(长整型)

    Python3里只有一种整数类型int,没有Python2中的Long。可以是正/负整数,不带小数点。

    常见的四种表现形式:

    2 进 制:以‘0b‘开头。例如:‘0b11011‘表示10进制的27

    8 进 制:以‘0o‘开头。例如:‘0o33‘表示10进制的27

    10进制:正常显示

    16进制:以‘0x‘开头。例如:‘0x1b‘表示10进制的27

    各进间数字进行转换(内置函数):

    bin(i):将i转换为2进制,以“0b”开头。

    oct(i):将i转换为8进制,以“0o”开头。

    int(i):将i转换为10进制,正常显示。

    hex(i):将i转换为16进制,以“0x”开头。

    主要作用:年纪,等级,身份证号,QQ号等整形数字相关

    1 age = 20

    float(浮点型)

    由整数部分和小树部分组成,也可以使用科学计数法表示。比如:

    2.5e2=2.5*102=250

    作用:工资,身高,体重等浮点数相关

    1 salsry = 100.1

    存储形式&浮点数为什么不准确问题见:https://www.cnblogs.com/zhangyanlong/p/11304849.html

    bool(布尔型)

    作用:经常用于条件判断

    1 if age >= 18:2 print(‘adult‘)3 else:4 print(‘teenager‘)

    一个布尔值只有两种值:True、False。(注意首字母大写)

    每个对象天生具有布尔True或False值。空对象,值为零的任何数字或者Null对象None的布尔值都是False。在Python3中True=1,False=0,可以和数字型进行运算。

    下列对象的布尔值是False:

    None;False;0(整型),0.0(浮点型);0L(长整形);0.0+0.0j(复数);“”(空字符串);[](空列表);()(空元组);{}(空字典)。

    值不是上列的任何值的对象的布尔值都是True,例如non-empty,non-zero等。用户创建的类实例如果是定义了nonzero(_nonzeor_())或length(_len_())且值为0,那么它们的布尔值就是False。

    注意:在 Python2 中是没有布尔型的,它用数字 0 表示 False,用 1 表示 True。到 Python3 中,把 True 和 False 定义成关键字了,但它们的值还是 1 和 0,它们可以和数字相加。

    complex(复数)

    复数由实数部分和虚数部分构成,可以用a + bj,或者complex(a,b)表示, 复数的实部a和虚部b都是浮点型。

    1 n=1-2j

    2 print(n.real)#得到实部值1.0

    3 print(n.imag)#的到虚部值-2.0

    Str(字符串)

    Python中的字符串用单引号 ‘ 或双引号 ” 或者三引号括起来,内部由一串字符组成。

    作用:名字,性别,国籍,地址等描述信息

    1 name = "garrett"

    字符串截取的语法格式:

    加号 + 是字符串的连接符, 星号 * 表示复制当前字符串,紧跟的数字为复制的次数。实例如下:

    1 str = ‘Runoob‘

    2

    3 print(str) #输出字符串

    4 print(str[0:-1]) #输出第一个到倒数第二个的所有字符

    5 print(str[0]) #输出字符串第一个字符

    6 print(str[2:5]) #输出从第三个开始到第五个的字符

    7 print(str[2:]) #输出从第三个开始的后的所有字符

    8 print(str * 2) #输出字符串两次

    9 print(str + "TEST") #拼接字符串

    结果:

    1 Runoob2 Runoo3 R4 noo5 noob6 RunoobRunoob7 RunoobTEST

    注意:

    1、反斜杠可以用来转义,使用r可以让反斜杠不发生转义。

    2、字符串可以用+运算符连接在一起,用*运算符重复。

    3、Python中的字符串有两种索引方式,从左往右以0开始,从右往左以-1开始。

    4、Python中的字符串不能改变,如拼接字符串相当于重新创建了一个新的字符串。

    Python3基本数据类型之int&str

    展开全文
  • 你是用是 "聚合" 方式來建立自己群集資料,這時候透過委託是個簡單方法:class Mylist:def __init__(self):self._mylist=list()def __len__(self):return len(self._mylist)def add(self,value):return self....

    你是用的是 "聚合" 的方式來建立自己的群集資料,這時候透過委託是個簡單的方法:

    class Mylist:

    def __init__(self):

    self._mylist=list()

    def __len__(self):

    return len(self._mylist)

    def add(self,value):

    return self._mylist.append(value)

    def __str__(self):

    return str(self._mylist)

    __str__ 是 Python 類中的特殊方法,他的回傳值就是使用 str(x) 所得到的值, 而 print(x) 其實就等於是 print(str(x)).其實再講細一點,當我們呼叫 str(x) 的時候其實是呼叫 x.__str__().

    也就是說我們可以這樣想像:

    print(x) === print(str(x)) === print(x.__str__())

    一般我們 自定義的類,__str__ 方法的回傳值是默認的字串,比如說: <__main__.mylist object at> 用以說明 namespace, class name 和位置.如果要改變 __str__ 的回傳值,我們必須要覆寫他.

    這邊我們讓 __str__ 的回傳值為 MyList 類中聚合的 list 的 __str__值,這樣就透過委託的方式讓 __str__ 的輸出跟 list 一樣了.

    多嘴補充一下,這種在 class 裡面 以雙底線開頭且以雙底線結尾 的 method (俗名叫做魔術方法或是特殊方法),有個正式名稱叫做 "dunder method",對於 __str__,我們可以唸作 "dunder string".

    The frequent use of a double underscores in internal identifiers in Python gave rise to the abbreviation dunder; this was coined by Mark Jacksonand independently by Tim Hochberg, within minutes of each other, both in reply to the same question in 2002. --wiki

    下方評論問的問題我回答在這裡.

    首先是不要被混淆,我們利用 print 印出來的內容都是 字串,即便你看到 [1, 2] 其實這也是一個字串 '[1, 2]',只不過內建的幾種資料型態(或我們有覆寫過 __str__ 的 class) 會想辦法輸出一個帶有該資料型態特徵的字串(通常會非常接近我們產生這些資料時所用的"字面").

    舉例,我們使用字面產生一個 list:

    lst = [1, 2]

    當我們打印 lst 時,Python 是會製造一個長得像該資料型態字面(甚至一模一樣)的字串讓你印出.

    print(lst)

    [1, 2] # 其實這是個字串,但是 lst 還是 list!

    所以在這裡 str(list) 並沒有改變 list 中元素的 type,只不過將帶有其特徵的 "字串" 當成回傳值.

    其次,如果想要在 Python shell (Python的互動介面)中能夠只利用變數名稱就展示用來表示 Mylist 的字串,光是 __str__ 還不夠,這必須要覆寫 __repr__:

    class Mylist:

    def __init__(self):

    self._mylist=list()

    def __len__(self):

    return len(self._mylist)

    def add(self,value):

    return self._mylist.append(value)

    def __str__(self):

    return str(self._mylist)

    def __repr__(self):

    return str(self)

    結果:

    \>>> from test import Mylist

    \>>> lst = Mylist()

    \>>> lst.add(1)

    \>>> lst.add(2)

    \>>> lst

    [1, 2]

    展开全文
  • 基础数据类型什么是数据: x = 10, 10是我们要存储的数据为什么分数据类型: 数据是用来表示状态的, 不同的状态就应该用不同的类型的数据表示。数字 int数字主要用于计算用# bit_length() 当十进制用二进制表示时,...
  • Python3基本数据类型之int&str,,python 中的python 中的变量不需要声明。每个变量使用前都必须赋值,变量赋值以后该变量才会被创建。 Python ,变量就是变量,它没有类型,我们所说"类型"是变量所指...
  • 目录1、字符串2、布尔类型3、整数4、浮点数5、数字6、列表7、元组8、字典9、日期1、字符串1.1、如何在Python中使用字符串a、使用单引号(')用单引号括起来表示字符串,例如:str='this is string';print str;b、使用...
  • 这篇文章我来说一说python中的标准数字类型python字符串str(),希望能帮助到刚刚接触到python你。python字符串(String):python字符串是由数字,字母,下划线所组成一串字符,一般可以记为如下样子:s=...
  • 对于同一个地址序列,在python3中用str表示和用bytes,输出样子会不一样,主要区别在于不可见字符。 在python3,要写bytes类型的常量,可以写成b’A’,来表示bytes形式字符A p32是压缩,返回是bytes ...
  • Python3 中的str和bytes类型Python3最重要新特性之一是:对字符串和二进制数据流做了明确区分。文本总是Unicode,由str类型表示,二进制数据则由bytes类型表示Python3不会以任何隐式方式混用str和bytes,...
  • bytes 一、字符串(str)1.1 字符串的定义字符串 就是 一串字符,是编程语言中表示文本的数据类型在 Python 可以使用 一对双引号 " 或者 一对单引号 ' 定义一个字符串可以使用索引获取一个字符串指定位置的字符,...
  • 运算符一.算数运算:二....int(整型)在python2整数类型有两种一个是int,表示整型,一种是long,表示长整型。而在python3整数类型只有int,没有限制大小,但是由于内存有限得原因,所以我们使...
  • 文本总是Unicode,由str类型表示,二进制数据则由bytes类型表示Python 3不会以任意隐式方式混用str和bytes,你不能拼接字符串和字节流,也无法字节流里搜索字符串(反之亦然),也不能将字符串传入参数为字节流...
  • Python3中的bytes和str类型

    万次阅读 多人点赞 2017-07-11 19:30:45
    文本总是Unicode,由str类型表示,二进制数据则由bytes类型表示Python 3不会以任意隐式方式混用str和bytes,你不能拼接字符串和字节流,也无法字节流里搜索字符串(反之亦然),也不能将字符串传入参数为字节...
  • 文本总是Unicode,由str类型表示,二进制数据则由bytes类型表示Python 3不会以任意隐式方式混用str和bytes,你不能拼接字符串和字节流,也无法字节流里搜索字符串(反之亦然),也不能将字符串传入参数为字节...
  • Python3 中的str和bytes类型 Python3最重要新特性之一是:对字符串和二进制数据流做了明确区分。文本总是Unicode,由str类型表示,二进制数据则由bytes类型表示Python3不会以任何隐式方式混用str和bytes,...
  • 文本总是Unicode,由str类型表示,二进制数据则由bytes类型表示Python 3不会以任意隐式方式混用str和bytes,你不能拼接字符串和字节流,也无法字节流里搜索字符串(反之亦然),也不能将字符串传入参数为字节流...
  • 文本总是Unicode,由str类型表示,二进制数据则由bytes类型表示Python 3不会以任意隐式方式混用str和bytes,你不能拼接字符串和字节流,也无法字节流里搜索字符串(反之亦然),也不能将字符串传入参数为字节...
  • 文本总是Unicode,由str类型表示,二进制数据则由bytes类型表示Python 3不会以任意隐式方式混用str和bytes,你不能拼接字符串和字节流,也无法字节流里搜索字符串(反之亦然),也不能将字符串传入参数为字节流...
  • Python基本数据类型:1.number数字整型(整数):python可以处理任意大小整数包括正整数与负整数浮点型(小数):在Python中表示浮点数时候回存在一些误差复数:a+bj2.str字符串类型定义:使用单引号或者双引号括起来...
  • Python的数据类型:1、字符串2、布尔类型3、整数4、浮点数5、数字6、列表7、元组8、字典9、日期1.字符串str = "char" --> 这是一组字符串print(str) --> 屏幕输出字符串也可以用单引号:str = 'char'print(str...
  • 一般实际操作的过程可能限定输入数据的类型 根据函数来判断的 接收input()输入的数据后,判断接收到的字符串是否为数字 例如: str = input(“please enter something:”) if str.isdigit():为True表示输入的...
  • 展开全部字符串或串...它是编程语言中表示文本的数据类型。 通常以串的整体作为操作对象,如:查找某个子串、求取一个子串、串的某个位置上插入一个子串以及删除一个子串等。两个字符串相等的充要条件是...
  • Python 3不会以任意隐式方式混用str和bytes,你不能拼接字符串和字节流,也无法字节流里搜索字符串(反之亦然),也不能将字符串传入参数为字节流函数(反之亦然)。 问题背景 基于URL解析报文时候,URL链接...
  • 文本总是Unicode,由str类型表示,二进制数据则由bytes类型表示Python 3不会以任意隐式方式混用str和bytes,你不能拼接字符串和字节流,也无法字节流里搜索字符串(反之亦然),也不能将字符串传入参数为字节流...
  • 浅析Python3中的bytes和str类型 Python 3最重要新特性之一是对字符串和二进制数据流做了明确区分。文本总是Unicode,由str类型表示,二进制数据则由bytes类型表示Python 3不会以任意隐式方式混用str和bytes...

空空如也

空空如也

1 2 3 4 5 ... 16
收藏数 318
精华内容 127
关键字:

在python中str表示的数据类型是

python 订阅