天天看点

由C学Python Day2Day2

Day2

1. 输出

1)基本输出

C Python
eg printf("my name:%s,my age:%d",name,age); print('my name:%s,my age:%d' %(name,age))
输出语句 printf print
主语句符号 双引号 单引号
语句与数据的分隔

另外,Python数据前面要加%, 多个数据用% (变量名1, 变量名2)的方式表示。 其他小技巧(如:%06d, %.2f)相同,转义字符(\t,\n)相同。

2)Python的格式化字符串

eg:

语法:f’表达式’

点评:该方式更简洁,上面的Python基本输出的思路和C接近,而这种方式感觉和C++的cout方式比较像,变量在哪输出就把变量名放在哪儿。

3)print的结束符

格式:print(…,end=’…’)

默认情况下,每个print自带 end=‘\n’。

2.输入

格式:

变量名 = input(‘提示信息’)

特点:

遇到input,等待输入;

input读入都是按照字符串格式。

点评:

这块和C的输入语法有很大不同,更简单更统一化,吐槽一波C的输入scanf,变量名前要加取地址符&真的不太舒服。

3.数据类型转换

但input这种输入方式简便统一的代价是需要类型转换。数据类型转换的方式和C相同,都为: 需要转换的类型名(需要转换的变量名)。

特别的,Python有这种功能:

eg:

str1 = '1.1'
print(type(eval(str1)))
           

输出结果是: <class ‘float’>

这里用到了Python的 eval(),其功能是 计算字符串中的有效数据类型。

4.运算符

1)算数运算符

C中的除法根据数据类型有所不同,Python中将其分为两类:除(/)与整除(//),并且指数计算也更为方便。

/ // **
整除 指数
9/2=4.5 9//2=4 2**3=2*2*2=8

其他基本运算符大致相同。 优先级也与C基本相同: ()高于**高于* / // % 高于+ -。

2)赋值运算符

单个变量赋值相同,多个变量赋相同值也相同;

此外,Python还支持了多个变量一起赋值

eg:

3)复合赋值运算符

+=,-=这种,和C基本一样。

知识点:先算复合赋值运算符右边的表达式,再算复合赋值。

4)比较运算符

与C同

5)逻辑运算符

C Python
&& and
|| or
not

良好的编程习惯:在 and,or左右加上(),以免产生歧义。

Python中数字的逻辑运算规则:

and,只要有0结果为0,否则结果为最后一个非0数字;

or,全0结果才为0,否则结果为第一个非0数字。