目录

  • Day.01
  • 1.编写输入输出程序
  • 2.冒号和及分号的用法
  • 3.Python的变量类型
  • 4.最后

Day.01

2020.02.19
昨天折腾了一下午才装好了PyCharm和Anaconda,所以没怎么学习,今天算正式开始python的学习。通过视频网课,我主要学习了以下内容:

1.编写输入输出程序

#输出
print('hello world!')
#输入
print('请输入你的姓名:')
name = input()
print('请输入你的年龄:')
age = input()
print('你的名字是:', name, '你的年龄是:', age)

VS C++:我感受到的最大的区别在于python的变量不需要定义类型,直接编写变量名即可,这是比C++优秀的地方,使用起来十分方便。

2.冒号和及分号的用法

不同于C++中每一句语句后面都需要加上分号;以表示结束,在python中,分号;仅用来表示一行的结束,如:前文输入的例子可以改写成:

#分号改写
print('请输入你的姓名:');name = input();print('请输入你的年龄:');age = input();print('你的名字是:', name, '你的年龄是:', age)

而冒号在python中则是用于代码块的划分,比如,经典的if else语句:

#冒号划分代码块
a = 100
if a>0:
    print(a)
else:
    print(-a)

3.Python的变量类型

python中的变量主要可分为:数字型和非数字型。
而其中数字型有:①整型(int);②浮点型(float);③布尔型(bool),其中,布尔型非0即真。
非数字型有:①字符串;②列表;③元组;④字典。
其变量类型大体和C++相似,独有的是列表、元组和字典这三种。我通过阅读牛客网的python3教程对这几种变量类型有了一定的初步认识,比如截取,删除,增加等,但是想要熟练运用还需要通过更过的实战经验积累才行。
其中我认为比较重要的一个是变量的格式化输出:

格式化字符串

含义

%s

字符串

%d

有符号十进制数,%06d表示输出的整数显示位数字,不足的地方用0补全

%f

浮点数,%.2f表示小数点后只显示两位

%%

输出%

具体应用方法可以通过一个例子来说明:

#变量的格式化输出
name = '小明'
student_nu = 1
print('我的名字叫%s,请多多关照'%name)
print('我的学号是%06d'%student_nu)
#其输出结果是:
#我的名字叫小明,请多多关照
#我的学号是000001
#注意,如果不用格式化输出,而采用普通的方式:
name = '小明'
student_nu = 1
print('我的名字叫', name, ',请多多关照')
print('我的学号是', student_nu)
#将会输出:
#我的名字叫 小明 ,请多多关照
#我的学号是 1

由上文可见,格式化输出还是普通输出,其主要的区别在于变量和既定输出字符串之间是否存在空格,以及格式化输出可以更好地控制想要输出的数字类型。

4.最后

作为初学python的第一课,我觉得很有必要去输出python之禅,并将其翻译一下,这也象征着正式迈入了python的大门。

#在windows系统中按win+R打开运行,输入cmd打开命令指示符,输入python进入交互模式
>>>import this
The Zen of Python, by Tim Peters

Beautiful is better than ugly.
Explicit is better than implicit.
Simple is better than complex.
Complex is better than complicated.
Flat is better than nested.
Sparse is better than dense.
Readability counts.
Special cases aren't special enough to break the rules.
Although practicality beats purity.
Errors should never pass silently.
Unless explicitly silenced.
In the face of ambiguity, refuse the temptation to guess.
There should be one-- and preferably only one --obvious way to do it.
Although that way may not be obvious at first unless you're Dutch.
Now is better than never.
Although never is often better than *right* now.
If the implementation is hard to explain, it's a bad idea.
If the implementation is easy to explain, it may be a good idea.
Namespaces are one honking great idea -- let's do more of those!
#翻译:
#Python之禅 by Tim Peters

#优美胜于丑陋(Python以编写优美的代码为目标)
#明了胜于晦涩(优美的代码应当是明了的,命名规范,风格相似)
#简洁胜于复杂(优美的代码应当是简洁的,不要有复杂的内部实现)
#复杂胜于凌乱(如果复杂不可避免,那代码间也不能有难懂的关系,要保持接口简洁)
#扁平胜于嵌套(优美的代码应当是扁平的,不能有太多的嵌套)
#间隔胜于紧凑(优美的代码有适当的间隔,不要奢望一行代码解决问题)
#可读性很重要(优美的代码是可读的)
#即便假借特例的实用性之名,也不可违背这些规则(这些规则至高无上)
#不要包容所有错误,除非你确定需要这样做(精准地捕获异常,不写except:pass风格的代码)
#当存在多种可能,不要尝试去猜测
#而是尽量找一种,最好是唯一一种明显的解决方案(如果不确定,就用穷举法)
#虽然这并不容易,因为你不是Python之父(这里的Dutch是指Guido)
#做也许好过不做,但不假思索就动手还不如不做(动手之前要细思量)
#如果你无法向人描述你的方案,那肯定不是一个好方案;反之亦然(方案测评标准)
#命名空间是一种绝妙的理念,我们应当多加利用(倡导与号召)