今天开始学习python,我使用的是Anaconda安装的python3.7,身为小白的我安装就用了一上午的时间,下午开始好好学习
使用默认环境的话,cmd命令行输入conda activate base回车后,输入python回车,进入到python的交互模式,exit()为退出python交互模式,这时就可以开始敲了
1.第一个python程序
>>>print('hello Python') 在交互模式下,回车自动打印hello python
另外一种方法,我们可以在编辑器中编辑一个print('hello Python') ,保存D:>Download>day01.py(文件名只能是英文/数字和下划线,且需要.py结尾),使用命令行去运行,切换磁盘d:回车,进入某文件cd Download回车,再输入day01.py即可,此处我出现了几次错误主要是不会切换目录,还有就是保存的py文件没有与python关联,py文件只能在命令行中去运行,不能在交互模式下进行
在交互模式下,自动打印100+200+300回车,自动出现结果600;如果是命令行去运行一个100+200+300的py文件并没有输出,需要将文件改为print(100+200+300)
2.输入和输出
输出print(),可以输出字符串和数字,字符串使用”或者‘(不可混用),多个字符串使用“,”连接,其中“,”用空格的形式输出
输入input(),可以给一个变量赋值,如name=input(),回车之后输入需要赋的值sky回车,此时name=sky,我们print('hello,',name)即可输出结果
同时input()可以将()内的内容打印,
但是输入的内容保留原格式赋值给变量,即使是数字运算可不会计算
3.数据的类型及分类
整数 python可以处理任何大小的证书,包括正整数及负整数
浮点数 就是小数
字符串 即为“”或''内的任何文本,但当单引号或双引号内的文本中也含有“”或’‘时,就需要转义字符\来标识,注意方向
\n表示换行 \t表示制表符 \\表示的字符就是\,r''表示’ ‘中间的内容不转义,换行除了用\n外还可以用‘‘‘...'''格式
布尔值 True False 可以用and or not计算
空值 用None表示
变量 可以是任何数据形式,变量通常用一个名称来表示(数字、字母或下划线的组合,但是数字不能开头)
常量 就是不能变的量,比如Π
额外的一点,除法运算包含又两种,/和//,其中/为精确计算结果为浮点数(即使是整除也会保留一位小数3.0,//为地板除结果只保留整数部分(两个整数//结果为整数,其中有一个浮点数结果就保留一位小数如:3.0),%是用来获取除法的余数的运算,整数做//或者是%,结果都为整数,整数运算结果均为精确的。
4.编码问题
为什么需要编码呢?因为计算机可识别的只有0101这些,也就是字符串计算机是不认识的,字符就要先转化成数字才能处理
最早美国发明的ASCII只将127个字母编码到计算机里——》中国制定了GB2312(各个国家分别搞一套就又乱了)——》Unicode棒棒的将所有的语言统一到一套编码里了(一般为两个字节,复杂的需要4个字节,若均为字母的话就不好了存储空间相当于ASCII的两了)——》节能环保的UTF-8来了(字母1个字节,中文3个字节,生僻字符4-6字符)
现在计算机内存统一采用Unicode编码,当保存到硬盘上或者需要传输的时候转化成UTF-8
python3中的字符串采用的是Unicode编码,字符串支持多语言
单个字符串的编码可以,ord()获取字符的整数表示,chr()函数把编码转化成对应字符
python字符串类型为str,内存中以Unicode表示,如果在网络上传输或保存在硬盘,需要转化成字节为单位的bytes,python对字节类的数字采用带前缀的b''表示,如b'ABC'
以Unicode表示的str,通过encode()方法可以编码为指定的bytes
相反,通过decode()方法,将bytes转为str
len()函数可以查看str有多少字符数,也可以查看bytes有多少字节
操作字符串的时候经常会用到str与bytes的转换,为了避免乱码,尽量使用UTF-8编码