目录
参考书——《Python中文指南》
【基础输入输出】
input 函数:获取用户输入,保存成一个字符串。
>>> a=input("Send a message:")
Send a message:0921
>>> a
'0921'
>>> type(a)
<class 'str'>
>>> a=int(a)
>>> a
921
>>> type(a)
<class 'int'>
如上述代码所示,一开始从 input 的输入类型是 str ,经过 int()才强制转换为 int 类型。这边需要特别注意的是,原本的输出从 ‘0921’变成了 921,0在转换过程中被自动略去。
_strip()函数:去除首尾空格
>>> name=" I love Ck"
>>> name
' I love Ck'
>>> name=name.strip()
>>> name
'I love Ck'
lstrip()函数去除左边空格,rstrip()函数去除右边空格
>>> a=" I Love Ck "
>>> a
' I Love Ck '
>>> a=a.lstrip()
>>> a
'I Love Ck '
>>> a=a.rstrip()
>>> a
'I Love Ck'
isdigit()函数:判断输入内容是否是想要的数值类型
>>> a=input("Send your message: ")
Send your message: Ck
>>> if a.isdigit():
... a=int(a)
... print("Fine: ",a)
... else:
... print("It can\'t be uesd!!")
...
It can't be uesd!!
!在 isdigit()的判断逻辑里,str类型的‘0921’与int类型的921是同一种数值
print()函数:依次打印每个字符串,每遇到一个逗号,就输出一个空格
>>> a=" I love"
>>> b="Ck!!"
>>> print(a,"a",b)
I love a Ck!!
>>> print(a+"a"+b)
I loveaCk!!
>>> a,b=10,2
>>> print(sum((a,a*b)))
30
从上手难度来看,Python确实要比C和C++要简易不少,一些内置函数方便的让之前苦于自己写函数的自己幸福的想哭hhh。Fine~在 print()中例子里的 “a” 就是字母a,与设置的常量a并不相同;在第二个print中用 “+” 带代替 “,” ,这样就让输出里的空格“消失”。
在书中有提到print的函数原型里面有sep和end两个参数决定了分割的符号以及打印后的结束方式。在原函数中“sep=' ', end='\n' ”,也就是空格和换行。但只要在print函数里改变参数,就可以实现灵活打印控制。
>>> a=" I love"
>>> b="Ck!!"
>>> print(a,"a",b,sep='*')
I love*a*Ck!!
【格式化输出】
Plan1:用%输出
Python里的%输出与C语言大差不差,这里就不多啰嗦,直接上例子
>>> name="Kx"
>>> age=20
>>> print("我的爱人是:%s,今年 %d" %(name,age))
我的爱人是:Kx,今年 20
Plan2:用format
书中一共给了三种模式,都是用 {} 进行占位,然后在字符串后跟上 .format()函数来填充变量。format函数会自动依次填充①,但为了不看错,可以使用索引②,甚至直接用变量名替代③
>>> print("我的爱人是:{},今年{}".format(name,age)) #①
我的爱人是:Kx,今年20
>>> print("我的爱人是:{0},今年{1}".format(name,age)) #②
我的爱人是:Kx,今年20
>>> print(f"我的爱人是:{name},今年{age}".format(name=name,age=age)) #③
我的爱人是:Kx,今年20
Plan3:用f-string
Python3.6才支持的写法(现在已经3.10了),随便看看
>>> print(f"我的爱人是:{name},今年{age}")
我的爱人是:Kx,今年20
Add:以上name和age常量都在Plan1里定义好了