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 | |
主语句符号 | 双引号 | 单引号 |
语句与数据的分隔 | , | 无 |
另外,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数字。