Python-点滴
本节内容:
- python简介
- 安装(python,pycharm)
- 第一个程序(Hello,World!)
- 变量
- 用户输入
- 字符编码
- 格式化输出
- if流程控制
- while循环
- for循环
一、Python介绍
python作为一门解释型语言(也可以编译),简洁,强大, 至于为什么简洁,为什么强大,,,此处省略1w+
二、python 安装
2.1 版本选择
安装python其实就是安装python的运行环境,就像使用java要安装jdk一样。至于版本python 2.0 和 3.0 差距比较大,学习还是推荐使用3.0, 目前很多公司的python代码也在从2.0 迁移到3.0,至于为什么选择3.0 ....点我
截止目前(2018-02-01),官网上发布的最新是2017-12-19的Python 3.6.4 ,
我个人选择版本新惯性选择最新的低1-2个版本,新版本老是有许多问题,这些坑就让别人去踩吧,他们踩完我在去,^_^ 安全第一嘛
2.2 python安装
其实python安装就是运行安装程序,最后记得改下环境变量, 在 右键我的电脑--高级系统设置--环境变量 ,把python的安装目录加入进去就可以了。(和linux 的PATH 一个道理) 对了这是windows 环境下安装python。
之后安装pycharm时 勾选上设置环境变量,就会帮你设置了。
如何验证是否安装成功呢?
windows + r 打开cmd, 输入python, 如下图:
出现这个就是安装成功啦。
输入exit() 就可以退出啦。
三、第一个程序
什么数据类型,什么编码方式,我不管,我就要写第一个程序!!!
print("Hello World !") #如果打印字符串需要用引号括起来,什么是字符串,待会再说。
(没错就是 Hello World,不要问我为什么是Hello World , 我也不知道,我下意识的就写了这个 )
print 在这里是打印的意思,他会将拓号内的内容打印到屏幕。
运行结果:
四、变量
变量就是程序中开辟一段内存空间,用来储存数据。
变量调用则是读取这段内存空间。
4.1 变量定义规则
·
变量名只能是字母、数字或下划线的任意组合
·
变量名的第一个字符不能是数字
·
以下关键字不能声明为变量名
['and', 'as', 'assert', 'break', 'class', 'continue', 'def', 'del', 'elif',
'else', 'except', 'exec', 'finally', 'for', 'from', 'global', 'if', 'import',
'in', 'is', 'lambda', 'not', 'or', 'pass', 'print',
'raise', 'return', 'try',
'while','with', 'yield']
例如:
name_T = "Tom"
name_J = 'Jerry'
#变量写成这种key = "value" 的形式, 双引号内代表字符串(也可以用单引号),如果将一个变量传递给另一个变量
print(name_T,'and',name_J) #print() 如果是字符串需要加引号,变量直接写变量名即可。
name_T = name_J #此时name_J 的数据会赋给 name_T
print(name_T)
#运行结果如下:
C:\Python34\python.exe E:/python/python之路/day1/HelloWorld.py
Tom and Jerry
Jerry 进程已结束,退出代码0
4.2 变量类型
4.2.1 整数
python的整数和数学上的整数写法相同, 1 , 2 , 3 , -1, -2,
如:
a = "1"
print(type(a)) #print(type()) 打印变量类型
b = 2
print(type(b))
c = "3"
d = "-1"
运行结果:
<class 'str'>
<class 'int'>
1 2 3 -1
引号内的都是字符串,引号内的都是字符串,引号内的都是字符串
可以看到
a = "1" 时 a为字符串
b = 2 时b为整型
由此可知 变量类型 和 数值类型无关,而取决于 定义方式
在看:a = "1"
print("a",type(a)) #a 为字符串类型
b = 2
print("b",type(b)) #b为整型
c = "3"
d = "-1"
print(a,b,c,d)
b = a #将a 赋值给b 后 直接将一个变量 赋值给另一个变量
print("b",type(b)) #b 变为了字符串类型 运行结果:
C:\Python34\python.exe E:/python/python之路/day1/HelloWorld.py
a <class 'str'>
b <class 'int'>
1 2 3 -1
b <class 'str'>
进程已结束,退出代码0
如图所示:
a 为字符串类型
b 为整形
但是当我把 a 赋值给b 后 ,b 也变为了字符串类型。
像这种变量类型本身不固定的语言,我们称之为“动态语言”,与之对应的则是“静态语言”
既然他本身变量类型不固定,我们可不可以强制固定呢?
答案是:当然可以, 给他定义下类型,不就得了吗?(是不是傻,,,要被打了,赶快跑)
还是那个文件,添加如下内容:
b = int(b) #相当于重新给 b 进行赋值,只不过赋值的类型为“整形”
print("b",b,type(b))
打印结果如下:
a <class 'str'>
b <class 'int'>
1 2 3 -1
b <class 'str'>
b 1 <class 'int'> #此时的 b 又变为了整形
当然了,这是转换变量类型,我们也可以在最开始定义变量时,就指定“变量类型”
# Author:ali6102
#encoding=utf8
a = int("1")
print("a",a,type(a))
C:\Python34\python.exe E:/python/python之路/day1/HelloWorld.py
a 1 <class 'int'>
进程已结束,退出代码0
看虽然定义时用了引号,同时我也写了int() ,但是最终变量是整形。
4.2.2 浮点数
浮点数就是小数,按照科学记数法表示时,浮点数的小数点位置是可以变化的,比如,1.234x103 == 12.34x10 (python中 “=” 表示赋值,“==” 才是数学意义上的相等),所以才会被称为浮点数。
4.2.3 字符串
前面说到了 print 字符串时 需要将字符串是以单引号'
或双引号"
括起来,否则会当做变量进行解析,
注意:括起来的内容中如果有 空格 也会认为是字符串。
4.2.4 转义字符
如果print 的内容中有引号, 这时如果直接print 则会报错。
print(’I'm ok') #有两个方法可以解决:
① 如果输出' 则字符串使用"" 括起反之亦然,就不会冲突了,此法还是有些局限性。
print("I' am ok")
结果如下:
I' am ok ② 就是使用转义字符
print('I\'m ok \'\'')
print("I\'m ok")
结果如下:
I'm ok ''
I'm ok
#这里面的 ' 都被转义为普通字符,不再起作用。 同样的我们将一些特殊的普通字符转义后,便可以实现一些特殊功能,
print("I\'\nm\tok")
运行结果如下:
I'
m ok
如果print中有许多字符需要转义,则需要些许多\
所以python提供了一种不转义的方法:
#r'' 中的字符默认不转义
print(r'\n\t') 运行结果:
\n\t
4.2.5 布尔值
一个布尔值只有True 和 False 两种值,注意大小写。
如果成立则会返回True ,不成立则会返回False
布尔值也可以用于逻辑运算
>>> True and False
False
>>> True or False
True
>>> False and False
False
突然想到:
if 流程控制是不是也是根据“条件” 的运算结果True 或 False 来决定下一步执行哪部分代码
于是试了一下:
竟然可以运行,oh my god 还能这么玩~ ,我好像明白了些什么“while True” 什么的,,,
1 为真
0 为假
not 运算
not一个单目运算符,它的作用是取反,即将 True 变成False,将False 变成 True
>>> not True
False
>>> not False
True
>>>
五、用户输入
之前说的变量都是都是运行程序的前定义好了“value”,那么问题来了,如何动态的获取用户输入的“值”,python 提供了一个input() 的东西(不知道 学名叫什么),可以通过它获取用户输入的内容;
# Author:Liang
# encoding=utf8 name = input("Name:") #input 可以获取用户输入的内容
age = int(input("Age:"))
print(type(name),type(age))
print(name,"\n",age) 运行结果:
C:\Python34\python.exe E:/python/python之路/day1/test.py
Name:Tom
Age:20
<class 'str'> <class 'int'>
Tom
20
进程已结束,退出代码0
六、字符编码
Python-点滴的更多相关文章
- Python 点滴 IV
[继承示意图] 类是实例的工厂, OOP就是在树中搜索属性,类事实上就是变量名与函数打成的包 . 每一个class语句会生成一个新的类对象 . 每次类调用时,就会生成一个新的实例对象 . 实例自己主动 ...
- Python点滴记录-day-01
python基础 - 基础 1.第一句python - 后缀名是可以可任意? - 导入模块时,如果不是.py文件 ==>以后文件后缀名是.py 2.两种执行方式 python解释器 py文件路径 ...
- 【Python】Python点滴(一)——pip工具使用
首先我们来看一条命令:pip install uwsgi 这条命令按照操作名称,可以分为三个部分:pip.install和uwsgi.接下来,按照这样三个部分进行分析. pip pip类似于Rea ...
- Python 点滴 I
[为什么使用Python] 1. 软件质量: Python更注重软件质量,一致性,可维护性 2. 开发效率: 相比C/C++/Java这些编译/静态语言,无需编译及链接步骤,Python所须要 ...
- python点滴:读取和整合文件夹下的所有文件
当我们想读取一个文件夹下的多个文件,并且将所有文件的内容整合成一个文件,应该怎么做? 基本的思路是:写一个专门的函数实现以上两个功能.主要用到的命令包括os.listdir().codecs.open ...
- python点滴:判断字符串是否为合法json格式
在一些情况下,我们需要判断字符串是否为合法json格式. 思路很简单:尝试对字符串使用json.loads(),如果不是合法json格式,则会抛出ValueError异常. 示例如下: import ...
- 基于linux运用python开发知识点滴
我是小白,希望我的文章能对小白们有点作用. A.Linux的开源,优势明显,如何使用,基本命令如下: 个人认为最基础的两种操作: 1.文件操作: ls 看文件夹下内容 ls -a 隐藏文件 -l非隐藏 ...
- 自学Python的点滴
1.第一天 注释 ——任何在#符号右面的内容都是注释. 注释主要作为提供给程序读者的笔记. 程序应该包含这两行 #!/user/bin/python #Filename:**.py 2.在程序中打开P ...
- Python语法点滴
string: string.capitalize() 把字符串的第一个字符大写 string.startswith(obj) string.endswith(obj) string.find(s ...
- 菜鸟python之路-第五章(记录读书点滴)
数字 1.数字类型 python支持多种数字类型:整型.长整型.布尔型.双精度浮点型.十进制浮点型和复数 . 创建数值对象并赋值 aint=1 along=-999999999999999L aflo ...
随机推荐
- Derivative of Softmax Loss Function
Derivative of Softmax Loss Function A softmax classifier: \[ p_j = \frac{\exp{o_j}}{\sum_{k}\exp{o_k ...
- bzoj 3597 [Scoi2014] 方伯伯运椰子 - 费用流 - 二分答案
题目传送门 传送门 题目大意 给定一个费用流,每条边有一个初始流量$c_i$和单位流量费用$d_i$,增加一条边的1单位的流量需要花费$b_i$的代价而减少一条边的1单位的流量需要花费$a_i$的代价 ...
- hello2代码的简单分析
hello2部分代码: String username = request.getParameter("username");//将get~这个方法赋给username这个对象 i ...
- RESTClient的基本使用
1.本人使用的是火狐浏览器,其他浏览器应该也有(没试过),安装插件RESTClient. 2.1.打开RESTClient:
- flutter插件汇总2
作者:知乎用户链接:https://www.zhihu.com/question/307594373/answer/568969429来源:知乎著作权归作者所有.商业转载请联系作者获得授权,非商业转载 ...
- win10 1803版本unable to start ssh-agent service, error :1058
PowerShell安装了pshazz或者posh-git,但是打开的时候提示 unable to start ssh-agent service, error :1058 1803的设置上面可以看到 ...
- sort排序原理
var array = [10,5,40,25,1000,1]; array.sort(compareFunction); function compareFunction(a, b) { ...
- BUTXO详解
在比原链中,每个交易消耗之前交易生成的BUTXO 然后生成新的 BUTXO,账户的余额即所有属于该地址的未花费 BUTXO 集合,BTM 的全局状态即当前所有未花费的BUTXO 集合.我们用一个具体的 ...
- 8、Dockerfile详解
除了init之外,每一个进程都应该是其他进程的子进程(init是内核启动的),当手动启动nginx时,那么这个nginx就以shell子进程存在.当打开一个命令行提示符时,这个就相当于在运行一个she ...
- HTML5外包注意事项-开发HTML5游戏的九大坑与解决方法剖析
随着移动社区兴起,势必带动HTML5的革命.未来一两年内,HTML5移动游戏必将呈现大爆发趋势. 以下是整理的HTML5游戏研发.市场趋势以及渠道布局和技术解决方案的内容.希望大家能从本文中找到对HT ...