【python基础教程】print输出函数和range()函数的正确使用方式

print()有多个参数,参数个数不固定。

有四个关键字参数(sep end file flush),这四个关键字参数都有默认值。

print作用是将objects的内容输出到file中,objects中的各个参数以sep为间隔,以end为结尾。

  • sep默认值是一个空格;end默认值为’\n’即“回车换行”;

  • file的默认值是sys.stdout,即标准输出终端;

  • flush的作用是是否即时输出,默认值为False,即执行完后输出。

a=3;b=98;c=0.23
'''
print()有多个参数,参数个数不固定。
有四个关键字参数(sep  end   file   flush),这四个关键字参数都有默认值。
print作用是将objects的内容输出到file中,objects中的各个参数以sep为间隔
,以end为结尾。sep默认值是一个空格;end默认值为’\n’即“回车换行”;
file的默认值是sys.stdout,即标准输出终端;
flush的作用是是否即时输出,默认值为False,即执行完后输出。

'''
#关键字参数sep的使用效果,默认值是空格,即' '
print(a,b,c)
print(a,b,c,sep='####')   # 3####98####0.23

#关键字end的使用效果,默认值是回车换行,即'\n'
print(a)
print(b)
print(c)
# 下面3个都打印在一行,缘由是end的默认值是换行符'\n',现在改变了
print(a,end='***')
print(b,end='+++')
print(c,end='aaa')


# print还可以写入文件,这时候就需要file参数了

f=open("ttt.txt",'w+')
# 如果是 False,则 close 文件时才真正写入,如果是 True,则立即写入。
print("abc",file=f,flush=True)
f.close()

格式化输出有两种方式:一种是使用格式化符号%,一种是使用字符串格式化函数str.format()。==>这里的str代表的是字符串,所以一般输出format前面的函数要用""或’'圈起来

# 输出和的格式化有2种,一种是%;另一种是{}:,这里的分号:分号前代表的是索引;分好后可进行数字格式化输出
a=9
b=95
c=0.234
d='Tony'
e="I'm a student"
print("---------下面是格式化输出---------")
print('%0.6d'%a) # 6位整数 000009
print('%06d'%a) # 6位整数 000009
# b、d、o、x 分别是二进制、十进制、八进制、十六进制。
# 十六进制要加#x
print('%#x'%b)
print('%8.4f'%c)
print("这和上面的8.4有什么关系呢:8.4f和0.4f一样"+'%0.4f'%c) # 8.4f和0.4f一样
print("这个是匹配3位么:有点像正则的匹配"'%*.*f'%(8,4,c))
print("下面这句换就完全看不懂输出了;分号:之前代表的是format中要匹配的数的索引:1:>8表示索引为1的元素在这里的右对齐且占8个宽度;5.2%百分号格式,也可以不写5")
print('{0:a^10d}--{1:>8}-->{1:5.2%}'.format(a,c))# , <, > 分别是居中、左对齐、右对齐,后面带宽度,
print('{0:a^10d}--{1:>8}-->{1:.2%}'.format(a,c))# , <, > 分别是居中、左对齐、右对齐,后面带宽度,
#  : 号后面带填充的字符,只能是一个字符,不指定则默认是用空格填充。

print(d,'said:',e,end='.\n')
print('%s said: %s.'%(d,e),'I\'m %d years old.'%a)
print('{1} said: {0}.'.format(e,d),'I\'m {} years old.'.format(a))
print('{name} said: {words}.'.format(words=e,name=d),'I\'m {} years old.'.format(a))
print('{
    
    {name: {}}}'.format(d)) # 用大括号{}进行转义;{}w外在嵌套一层括号

print('\n')

正和倒九九乘法表

'''
学习中遇到问题没人解答?小编创建了一个Python学习交流QQ群:531509025
寻找有志同道合的小伙伴,互帮互助,群里还有不错的视频学习教程和PDF电子书!
'''
for i in range(10):
    # i为0时下方代码
    for j in range(1,i+1): # 九九乘法表是前面乘数改变
        print('%dx%d=%-d'%(j,i,i*j),end='\t')
    print()

print('\n')

倒的

for i in range(10):
    for j in range(i+1,10): # 九九乘法表是前面乘数改变
        print('%dx%d=%-d'%(i,j,i*j),end='\t')
    print()

借用上方的九九乘法表想到了

for i in range(1):
    print(i) # 0
    for j in range(1,1+i):
        # 下方代码不会输出
        print(i) 
        print(j)

range函数相同或者前面比后面大都不会输出

for j in range(2,1):
    print(j) # 不输出

猜你喜欢

转载自blog.csdn.net/sinat_38682860/article/details/120417318