【Python】变量和数据类型

Python作为一门脚本语言与C#相比具有十分简易的语法,从数据类型这里就可见一斑:

数据类型

C#:

int a=5;
float b=3.2;
string c="Hello";
bool d=true;
if(d)Console.WriteLine(Convert.ToString(a+b));
else if(!d&&b>a)Console.WriteLine(c);

Python:

a=5
b=3.2
c="Hello"
d=True
if d:print(a+b)
else if not d and (b>a):print c

通过对比可以看出Python声明变量时不需要声明变量类型,直接赋值即可,语句结尾甚至不用添加分号。
并且可以直接输入“0x…”代表16进制数,如0x0a28d。科学记数法可写为xey的形式,如1.6e3=1.6*10^3。
直接将变量输入False或者True即可将变量初始化为布尔类型。逻辑运算符为and(&&),or(||),not(!)括号内代表C#的逻辑运算符。
空值用None表示。

输出

print(a+b)
print c
print "11+5=",c

没错,有时连括号都可以省略。
用逗号连接各字符串,相当于C#的”+”,但是连接处会有一个空格

Python中的“+”连接虽无空格但只用于连接字符串

另外,Python不支持自加运算符++或–,若要使用请改为x+=1

注释

print(a+b) #打印a+b的值```

<strong>井号注释掉一行</strong>,相当于C#的双斜线
<h1>变量的声名</h1>
特别注意的是,Python声明的变量是动态的,也就是说变量并不固定于某一个类型,这点与C系列语言均不同,如

```python
a=5
a="Hello"

这是可以编译通过的,其中需要注意的是:

1.字符串初始化用双引号“”或单引号”均可

2.变量名规则,这点倒是与C系列相同

转义字符

既然双引号用作字符串的声明,那么字符串里要用双引号怎么办?

学过C#的同学都只知道,用反斜线呗(\),对了,这里python也可以这么用。但是,在python里你也可以用单引号声明字符串,这样字符串里就可以有双引号了!惊不惊喜?意不意外?

但是,要是我一行代码里反斜线、单引号、双引号都有怎么办?角度刁钻,但是python也可以解决,那就是用r加一对单引号

r’…’

这里r代表raw,单反发烧友都知道,原始数据。

那我要是还想换行怎么办?你这一原始我\n也不能用了啊?别急,这还有:r加三对单引号,里面你可以任意换行

r”’…”’

C、C++、C#、Java跪

print "Hello!\nPython is so great!"
print r'''Hello!
Python is so great!'''

上面这俩输出结果相同。

由于某些Python版本差异,个别输出中文、日文等非英语字符时无法正常显示,这时就要在字符串前加u,代表其中是Unicode码。

那么,如果像C#这样:

string time="10:00",nexttime="11:00";
Console.WriteLine("Now time is {0},Next time is {1}",time,nexttime);

该如何实现呢?可以这样:
time=10:00
nexttime=11:00
printf ‘Now time is %s,Next time is %s%(time,nexttime)
与C语言一样,%s代表string数据类型。

发表评论

电子邮件地址不会被公开。 必填项已用*标注

此站点使用Akismet来减少垃圾评论。了解我们如何处理您的评论数据