Python纯入门学习笔记(二)

第二章

十一.格式化字符串:format

#十一.格式化字符串:format
first_name = input('What your first name?')
last_name = input('What your last name?')

method1 = 'Hello, ' + first_name + ' ' + last_name       #这个是我们之前所用到的使用 + 来拼接字符串
print(method1)
method2 = 'Hello, {} {}'.format(first_name, last_name)   #它工作的方式按照指定的参数顺序,第一个是变量first_name,第二个是变量last_name
print(method2)
method3 = 'Hello, {0} {1}'.format(first_name, last_name) #如果我们要指定用第几个参数,就需要填入数字,当然可以倒着来,也可以重复使用,巨方便
print(method3)                                           #笔者注:在任何计算机语言之中,第一项永远都是0(如果有特例来杠,那我无话可说。)

method4 = f'Hello, {first_name} {last_name}'             #前面的f使用F也行哦~ 它代表format 后面的拼接方式很直接,直接在{}里面输入变量名就行 
print(method4)
# 此用法(最后一个)只支持在Py3.x中使用

上面的 method 别看懵圈,他只是一个变量名,你可以随便用别的,我为了逼格高一点,就用了 方法 的英语 method 后面1234是序号,意思是第几种方法。

十二、实操格式化字符串

本节课内容就是实际操作使用 format ,代码我上一节课已经给出来了。希望大家也可以自己动手去尝试写出来并进行调试,你可能会有新的疑问[呲牙]

如果你调试了,你就会发现。以上的输出都是一样的,也就是可以用不同的方式实现字符串拼接。这就是计算机语言,条条大路通罗马。

十三、数值类型转换

1.数值和字符串一样可以储存到变量中去

pi = 3.14159    
#细心的朋友发现,这里给pi的值没有使用 '3.14159' ,也就是没有用'',这是因为在Py之中,数值是不需要''的,它需要区分数值和字符串
print(pi) 

2.我们再进一步使用运算试试

num1 = 6
num2 = 2
print(num1 + num2)      # 它代表 num1 + num2 , 也就是 6 + 2  打印的结果可想而知:8
print(num1 ** num2)     # 它的意思就是6的2次方,打印出来的结果也就是36

加法要使用 + 运算符
减法要使用 - 运算符
乘法要使用 * 运算符
除法要使用 / 运算符
指数运算要使用 ** 运算符

3.我们再试试和字符串拼接

num3 = 28
print('一般情况下二月有 ' + num3 + ' 天')    不知道有没有同学提前试过这种拼接,这样使用会出现报错的情况。

以上行为会出现报错原因是因为 不支持 int和string 的 +操作
也就是用 + 有歧义:Py不知道你用 + 到底是数值相加还是拼接字符串
于是我们就开始进入本节的正题:数值类型的转换

num3 = 28
print('一般情况下二月有 ' + str(num3) + ' 天')  

我们在这里使用了 str() 将 num3 里的数值转换为字符串,Py就知道了这是一个字符串。所以要是将数值和字符串混用时,就必须转换数值为字符串。

有小伙伴在这里又有了疑问,为什么我不直接用字符串呢?还转换,麻烦的一批。下面的代码可能对你的问题有更好的解读:

num4 = '5'
num5 = '6'
 #请注意,我这里给 数字 加了 '' ,它现在已经不是数值了,它是字符串!!!
print(num4 + num5) 
 #我们在这里使用了“ + 号运算符 ”,然而输出的结果却是:56(这里含义是5和6放在一起) 不信可以试试,信也去试试...

这就是数据类型转换的重要性,我们接下来还有很多的转换方式:int()、float()

num6 = input('请输入第一个数字: ')
num7 = input('请输入第二个数字: ')
print(int(num6) + int(num7))
print(float(num6) + float(num7))

调试输出的是什么?快去试试吧。

小结:
如果没有类型转换,两种及两种以上的变量值不能够进行拼接或者是进行运算。

str()会转换为字符串,用于和字符串搭配使用

int()会转换为数值,但是转换的值仅仅为整数,如果输入的是数字并带有小数,那么将会报错。

float()会转换为可以带有小数的数值 [官方称为:浮点数值]

我们在使用数字时候一定要确保类型正确,我想你应该清楚什么时候用数值(计算或者。。。),什么时候用字符串。

十四、实操数值类型转换

本节课所涉及的代码上节之中都已经给出,但是建议同学们自己也去试试。

十五、日期

from datetime import datetime 
 #从 datetime库 中导入 datetime函数 ,这个库后面将会介绍
today = datetime.now()        
 #然后我们获取 当前时间:datetime.now() [调用 datetime 中的 now函数] 赋值给 today
print('现在时间: ' + str(today))  
 #然后我们使用 str() 将日期转换为字符串

datetime库 中有很多函数可以调用 上面我们使用的是datetime.now()
我们试试 datetime库 中的 timedelta函数 :

from datetime import timedelta 
#记得还要导入 timedelta函数 ,当然是从 datetime库 中导入。

因为我们之前已经导入过 datetime函数 如果我们没有导入,我们可以一次性导入多个,方法是:

from datetime import datetime,timedelta   
 # [没错,英文格式的逗号就是隔开的方法]

↑上面这条代码的意思是 : 从 datetime(库) 中导入 datetime(函数),timedelta(函数)

one_day = timedelta(days=1)     #时间差:我设置的是一天,如果是3天,你可以 timedelta(days=3) , 还是那样,one_day 仅仅是一个变量名,我随便起的名字。
yesterday = today - one_day     #昨天[新的变量:昨天] = 今天[我本节刚开始通过datetime.now()获取的] - one_day[在上条代码定义了它是1天]
print('Yesterday was: ' + str(yesterday))

我这里顺利输出了昨天的时间:在这里插入图片描述

十六、实操日期

代码上面已经给出,建议自己手打哦~
如果运行时候报错看看是不是没有对日期进行类型转换!
同学们可以试试 'Tomorrow was : ’ + str(Tomorrow)) 或者 几天前还有几天后

1.我们还能试试只显示日期之中的某一部分:我在上面已经获取过今天时间,就不再次获取了

from datetime import datetime  
today = datetime.now()   
print('日: ' + str(today.day))
print('月: ' + str(today.month))
print('年: ' + str(today.day))

print('时: ' + str(today.hour))
print('分: ' + str(today.minute))
print('秒: ' + str(today.second))    #second也有秒的意思,不了解的同学们可以取查查看

以上代码输出是什么样子呢↓

在这里插入图片描述
2.我们接下来尝试计算用户输入的 下一个生日 [时间] 距离 今天 还有多少天:还是就不再继续获取今天时间了

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值