Bootstrap

第2课 “Hello World” 与 print

1 Hello World

2 print 函数解析

2.1 基本用法

2.2 输出多个对象

2.3 使用sep参数

2.4 使用flush参数

2.5 输出到文件

3 格式化输出

3.1 格式化输出整数

3.2 格式化输出16进制整数

3.3 格式化输出浮点数(float)

3.4 格式化输出字符串(string)

3.5 输出列表与字典

4 常用格式符


  字符串即多个字符的集合,由双引号或单引号包围。字符串内可包含英文字母、阿拉伯数字、汉字以及各种符号。
        本节会讲解一个简单入门的Python 程序——在屏幕打印字符串“Hello World”。

1 Hello World

         在PyCharm新建工程下新建一个文件test.py。并录入print(“Hello Word”),如下图所示:

点击标识“3”处后,在“输出终端区”将出现 Hello World。

        

至于脱离PyCharm平台,则可利用vim等工具,创建test.py等文件,进入test.py所在目录,执行python3 test.py,观察结果如下

2 print 函数解析

        print()函数是Python中用于输出数据的常用函数。它可以输出各种类型的数据,如数字、字符串、列表等,并且可以控制输出的格式和样式。以下是print()函数的一些常用使用方法:

2.1 基本用法

        print()函数的基本用法是将一对或多对括号包围的内容输出到控制台或文件中。例如:         

  print("Hello, World!")

        这将在控制台上输出字符串"Hello, World!"

2.2 输出多个对象

        print()函数可以同时输出多个对象,只需在括号内用逗号,分隔各个对象即可。例如:              

print("The value of x is", 3, "and the value of y is", 4)

        这将输出:“The value of x is 3 and the value of y is 4”
        两个对象之间缺省以空格相隔离

2.3 使用sep参数

        sep参数用于指定分隔符,即输出多个对象时,对象之间使用的分隔符。默认情况下,sep参数的值为一个空格。例如:       

  print("Python", "is", "awesome", sep="-")

        这将输出:“Python-is-awesome”

2.4 使用flush参数

        print() 函数会把内容放到内存中, 内存中的内容并不一定能够及时刷新显示到屏幕中。使用flush=True之后,会在print结束之后,不管你有没有达到条件,立即将内存中的东西显示到屏幕上,清空缓存。 尤其是:

  1.         1.尤其是在while循环中,要想每进行一次while循环体,在屏幕上更新打印的内容就得使用flush = True的参数。
    1.         2. 打开一个文件, 向其写入字符串, 在关闭文件f.close()之前, 打开文件是看不到写入的字符的。 要想在关闭之前实时的看到写入的字符串,应该用flush = True.
  2. 2.5 输出到文件

    1.         

              print()函数不仅可以将内容输出到控制台,还可以输出到文件中。只需在print()函数中使用file参数指定要写入的文件对象即可。例如:               

      1. with open("output.txt", "w") as f:
            print("Hello, World!", file=f)

             这将在名为"output.txt"的文件中写入"Hello, World!"

    2. 以上就是print()函数的一些常用使用方法。通过这些方法,你可以灵活地控制输出的内容和格式,满足不同的编程需求。

  3. 3 格式化输出

             print()函数支持格式化输出,可以通过字符串格式运算符 % .format() 方法来实现。例如

    1. age = 25
      print("I am %d years old." % age)
      print("I am {} years old.".format(age))

              这将输出:“I am 25 years old.”

    2. 3.1 式化输出整数

    3. strHello = "the length of (%s) is %d" %('Hello World',len('Hello World'))
      print(strHello)
      
      输出结果:
      the length of (Hello World) is 11
    4. 3.2 式化输出16进制整数

    5. #%x --- hex 十六进制
      #%d --- dec 十进制
      #%d --- oct 八进制
      nHex = 0x20
      print("nHex = %x,nDec = %d,nOct = %o" %(nHex,nHex,nHex))
      
      输出结果:
      nHex = 20,nDec = 32,nOct = 40

      3.3 格式化输出浮点数(float)

      1. import math
        #default
        print( "PI = %f" % math.pi)
        
        #宽度 = 10个字符, 精度 = 3位小数  ,对齐 = 左对齐
        print( "PI = %10.3f" % math.pi)
        
        #宽度 = 10个字符, 精度 = 3位小数  ,对齐 = 右对齐
        print( "PI = %-10.3f" % math.pi)
        
        #前面填充字符
        print( "PI = %06d" % int(math.pi))
        
        输出结果:
        PI = 3.141593
        PI =      3.142
        PI = 3.142     
        PI = 000003

        注:格式符号里的负号 “-”代表右对齐

        1. 3.4 格式化输出字符串(string)

          1. #精度= 3
            print("%.3s " % ("jcodeer"))
            
            #精度 = 4
            print("%.*s" % (4,"jcodeer"))
            
            #宽度 = 10字符, 精度= 3
            print("%10.3s" % ("jcodeer"))
            
            输出结果:
            jco 
            jcod
                   jco

                    字符串里的精度是指截取多少个字符

          2. 3.5 输出列表与字典

          3. l = [1,2,3,4,'jcodeer']
            print(l)
            
            d = {1:'A',2:'B',3:'C',4:'D'}
            print (d)
            
            输出结果:
            [1, 2, 3, 4, 'jcodeer']
            {1: 'A', 2: 'B', 3: 'C', 4: 'D'}

            注:列表与字典均可直接打印

          4. 4 常用格式符

       格式符为真实值预留位置,并控制显示的格式。格式符可以包含有一个类型码,用以控制显示的类型,如下:
        %s 字符串 
        %r 字符串
        %c 单个字符
        %b 二进制整数
        %d 十进制整数
        %i 十进制整数
        %o 八进制整数
        %x 十六进制整数
        %e 指数 (基底写为e)
        %E 指数 (基底写为E)
        %f 浮点数
        %F 浮点数,与上相同
        %g 指数(e)或浮点数 (根据显示长度)
        %G 指数(E)或浮点数 (根据显示长度)
        %% 字符”%”

        下面特别强调一下%s 与 %r 的区别,如下所示:%r是更像一个万能的格式符,它会将后面给的参数原样打印出来,包括字符串的上下引号。     

print("%r"%("jcodeer"))
print("%s"%("jcodeer"))

strHello = "Hello"
print("%r"%(strHello))
print("%s"%(strHello))

输出结果:
'jcodeer'
jcodeer
'Hello'
Hello

        

;