Day01第一天 Python基础一
变量
就是将一些运算的中间结果暂时存在内存中,以便后续代码的调用.
>命名规则:
1,只能以字母,数字,下划线自由组合,且,不能以数字开头.
2,不能是 Python 中的关键字.
3,要具有可描述性.
4,不要用中文命名.
常量
>一直不变的量
因为 Python 中没有常量的概念,所以,为了区别常量与变量,常量的命名除了与变量命名
规则相同外,所有字母全是大写,以此来区分常量与变量.
比如:
π # PAI = 3.14
建国日期 # BIR_OF_CHINA = 1949
注释
方便自己,方便他人理解代码,一定要养成写注释的习惯
>单行注释:
#
>多行注释:
'' 内容 '''或者""" 内容 """
基础数据类型
Ps.判断数据类型的方法是 typy()
>整数类型(int)
可以进行 + _ * / ** %
int(整型)
在32位机器上,整数的位数为32位,取值范围为-2**31~2**31-1,即-2147483648~2147483647
在64位系统上,整数的位数为64位,取值范围为-2**63~2**63-1,即-9223372036854775808~9223372036854775807
>字符串转化成数字:int(str) 条件:str 必须是数字组成的.
>数字转化成字符串:str(int)
>字符串类型(str)。
>在Python中,加了引号的字符都被认为是字符串!
1 >>> name = "Alex Li" #双引号 2 >>> age = "22" #只要加引号就是字符串 3 >>> age2 = 22 #int 4 >>> 5 >>> msg = '''My name is taibai, I am 22 years old!''' #我擦,3个引号也可以 6 >>> 7 >>> hometown = 'ShanDong' #单引号也可以
>那单引号、双引号、多引号有什么区别呢? 让我大声告诉你,单双引号木有任何区别,只有下面这种情况 你需要考虑单双的配合
1 msg = "My name is Alex , I'm 22 years old!"
>多引号什么作用呢?作用就是多行字符串必须用多引号
1 msg = ''' 2 今天我想写首小诗, 3 歌颂我的同桌, 4 你看他那乌黑的短发, 5 好像一只炸毛鸡。 6 ''' 7 print(msg) 8 9 今天我想写首小诗, 10 歌颂我的同桌, 11 你看他那乌黑的短发, 12 好像一只炸毛鸡。
>字符串拼接
数字可以进行加减乘除等运算,字符串呢?让我大声告诉你,也能?what? 是的,但只能进行"相加"和"相乘"运算。
1 >>> name 2 'Alex Li' 3 >>> age 4 '22' 5 >>> 6 >>> name + age #相加其实就是简单拼接 7 'AlexLi22' 8 >>> 9 >>> name * 10 #相乘其实就是复制自己多少次,再拼接在一起 10 ' AlexLiAlexLiAlexLiAlexLiAlexLiAlexLiAlexLiAlexLiAlexLiAlexLi'
注意,字符串的拼接只能是双方都是字符串,不能跟数字或其它类型拼接
1 >>> type(name),type(age2) 2 (<type 'str'>, <type 'int'>) 3 >>> 4 >>> name 5 'Alex Li' 6 >>> age2 7 >>> name + age2 8 Traceback (most recent call last): 9 File "<stdin>", line 1, in <module> 10 TypeError: cannot concatenate 'str' and 'int' objects #错误提示数字 和 字符 不能拼接
>布尔值(True,False)。
>布尔类型很简单,就两个值 ,一个True(真),一个False(假), 主要用记逻辑判断
但其实你们并不明白对么? let me explain, 我现在有2个值 , a=3, b=5 , 我说a>b你说成立么? 我们当然知道不成立,
但问题是计算机怎么去描述这成不成立呢?或者说a< b是成立,计算机怎么描述这是成立呢?
没错,答案就是,用布尔类型
1 >>> a=3 2 >>> b=5 3 >>> 4 >>> a > b #不成立就是False,即假 5 False 6 >>> 7 >>> a < b #成立就是True, 即真 8 True
用户交互(程序交互)
1,等待输入
2,将你输入的内容赋值给了前面的变量
3,input 出来的数据类型全都是字符串(str)
>执行脚本就会发现,程序会等待你输入姓名后再往下继续走。
1 # 将用户输入的内容赋值给 name 变量 2 name = input("请输入用户名:") 3 # 打印输入的内容 4 print(name)
>可以让用户输入多个信息,如下
1 name = input("What is your name?") 2 age = input("How old are you?") 3 hometown = input("Where is your hometown?") 4 5 print("Hello ",name , "your are ", age , "years old, you came from",hometown)
流程控制之--if语句
>格式
-------------------------------------------------------------------------------------------
Ps.缩进
if代码里,每个条件的下一行都缩进了4个空格,这是为什么呢?这就是Python的一大特色,强制缩进,
目的是为了让程序知道,每段代其它的语言里,大多通过{}来确定代码块,比如C,C++,Java,Javascript都是这样,
看一个JavaScript代码的例子
-------------------------------------------------------------------------------------------
1 >JavaScript代码的例子: 2 var age = 56 3 if ( age < 50){ 4 console.log("还能折腾") 5 console.log('可以执行多行代码') 6 }else{ 7 console.log('太老了') 8 }
-------------------------------------------------------------------------------------------
在有{}来区分代码块的情况下,缩进的作用就只剩下让代码变的整洁了。
Python是门超级简洁的语言,发明者定是觉得用{}太丑了,所以索性直接不用它,那怎么能区分代码块呢?答案就是强制缩进。
Python的缩进有以下几个原则:
顶级代码必须顶行写,即如果一行代码本身不依赖于任何条件,那它必须不能进行任何缩进
同一级别的代码,缩进必须一致
官方建议缩进用4个空格,当然你也可以用2个,如果你想被人笑话的话。
-------------------------------------------------------------------------------------------
if 条件: 冒号的作用是 条件与结果分开,程序一读到冒号就知道冒号前面是条件,后面是结果.
此处要缩进 #这是格式
#第一种 单分支
格式:
if 条件:
满足条件后要执行的代码
例子:
1 if 5 > 4 : #如果这个条件为True,那么执行下面的语句.(if True : #这也是一种条件写法) 2 print(666) #条件为真,执行这条代码.
-------------------------------------------------------------------------------------------
#第二种 (双分支)
格式:
if 条件:
满足条件执行代码
else:
if条件不满足就走这段
例子1:
Age = 48 if Age > 50 : print("Too old, time to retire..") else: print("还能折腾几年!")
例子2:
1 if 4 > 3 : #如果这个条件为True,那么执行下面的语句.(if True : #这也是一种条件写法) 2 print('我请你吃饭') #条件为真,执行这条代码. 3 else: #条件为假时,执行这段代码. 4 pirnt('你叫啥?')
-------------------------------------------------------------------------------------------
#第三种 (多分支)
格式:
1 if 条件: 2 满足条件执行代码 3 elif 条件: 4 上面的条件不满足就走这个 5 elif 条件: 6 上面的条件不满足就走这个 7 elif 条件: 8 上面的条件不满足就走这个 9 else: 10 上面所有的条件不满足就走这段
>例子1:
1 num = intput('请输入您猜的数字') 2 if num == '1' : # 3 print('一起抽烟') # 4 5 elif num == '2' :# 6 print('一起喝酒?') 7 8 elif num == '3' :# 9 print('一起喝酒?') 10 11 else: 12 print('你输错了')
>例子2:猜年龄的游戏
1 age_of_oldboy = 48 2 3 guess = int(input(">>:")) 4 5 if guess > age_of_oldboy : 6 print("猜的太大了,往小里试试...") 7 8 elif guess < age_of_oldboy : 9 print("猜的太小了,往大里试试...") 10 11 else: 12 print("恭喜你,猜对了...")
上面的例子,根据你输入的值不同,会最多得到3种不同的结果
>例子3:再来个匹配成绩的小程序吧,成绩有ABCDE5个等级,与分数的对应关系如下
A 90-100
B 80-89
C 60-79
D 40-59
E 0-39
要求用户输入0-100的数字后,你能正确打印他的对应成绩
1 score = int(input("输入分数:")) 2 3 if score > 100: 4 print("我擦,最高分才100...") 5 elif score >= 90: 6 print("A") 7 elif score >= 80: 8 print("B") 9 elif score >= 60: 10 print("C") 11 elif score >= 40: 12 print("D") 13 else: 14 print("太笨了...E")
这里有个问题,就是当我输入95的时候 ,它打印的结果是A,但是95 明明也大于第二个条件elif score >=80:呀, 为什么不打印B呢?
这是因为代码是从上到下依次判断,只要满足一个,就不会再往下走啦!
-------------------------------------------------------------------------------------------
#第四种 (嵌套)
>例子四:
1 name = input('请输入你的名字:') 2 age = input('请输入你的年龄:') 3 if name == '小二': 4 if age == "18": 5 print('你18岁了') 6 else: 7 print('年龄你猜的不对哟!') 8 else: 9 print('我都不知道你说的',"'",name,"'",'是谁,怎么告诉你他/她几岁!')
流程控制之--while 循环语句
格式:
while 条件:#这个条件只要是能判断出真假的,都可以.
循环体
>例子1:无限循环
1 while True: #当条件一直为真时,且没有退出条件,那么将会无限循环. 2 print('你') 3 print('我') 4 print('他')#代码读到这时,因为没有退出条件语句,所以返回第一行 while ,判断还是真,又进入循环. 5 print('你,我,他') #此条将不会被打印.
>例子2:条件不满足,终止循环
1 1 count = 1 2 2 flag = True #此为:标志位 3 4 while flag: 4 5 print(count) 5 6 count = count + 1 6 7 if count > 100 7 8 flag = false #此为标志位
>例子2-1:条件不满足,终止循环
1 count = 1 3 while count <= 100: 4 print(count) 5 count = count + 1 #或都也可以写成 count += 1
>例子2-2:从1加到100的计算
1 count = 1 2 sum = 0 4 while count <= 100: 5 sum += count #或都也可以写成 sum = sum + count 6 count = count + 1 #或都也可以写成 count += 1 7 print (sum)
>例子3:break 跳出,终止
1 while True: #当条件一直为真时,且没有退出条件,那么将会无限循环. 2 print('你') 3 print('我') 4 break #当出线跳出条件时,停止当前循环,继续循环之后的代码. 5 print('他')#这段代码不打印.该循环因为 break 的跳出,所以.不执行此代码 6 print('你,我,他') #此条将会被打印.跳出循环后,执行了这段代码
>例子3-1:break 从1打印到100
1 count = 1 3 while True: 4 print(count) 5 count += 1 6 if count >100: 7 break
>例子4:continue #结束本次循环,继续下次循环
1 count = 1 3 while count < 10 : #循环条件 4 print(count) #打印变量 count的值 5 continue #结束本次循环,返回 while 继续下一次循环 6 count += 1 #这段不会执行.因为上面一直再死循环
>例子4-1:continue #1-10这10个数字.除了5-8,其它的打印出来
1 count = 0 2 while count < 10 : #循环条件 3 count += 1 4 if count > 4 and count < 9 : 5 continue 6 print('loop',count) 7 print ('循环结束!')
Day01第一天 Python基础一的更多相关文章
- [Python笔记][第一章Python基础]
2016/1/27学习内容 第一章 Python基础 Python内置函数 见Python内置函数.md del命令 显式删除操作,列表中也可以使用. 基本输入输出 input() 读入进来永远是字符 ...
- 第一篇:python基础
python基础 python基础 本节内容 python起源 python的发展史 为什么选择python3 第一个python程序 变量定义 表达式和运算符 用户输入 流程控制 判断 流程控制 ...
- Python笔记·第一章—— Python基础(一)
一.Python的简介 1.Python的由来与版本 1.1 python的由来 python的创始人为吉多·范罗苏姆(Guido van Rossum).1989年的圣诞节期间,吉多·范罗苏姆(中文 ...
- 面试题之第一部分(Python基础篇) 80题
第一部分(python基础篇)80题 为什么学习Python?==*== # 1. python应用于很多领域,比如后端,前端,爬虫,机器学习(人工智能)等方面,几乎能涵盖各个开发语言的领域,同时它相 ...
- 我的Python成长之路---第一天---Python基础(1)---2015年12月26日(雾霾)
2015年12月26日是个特别的日子,我的Python成之路迈出第一步.见到了心目中的Python大神(Alex),也认识到了新的志向相投的伙伴,非常开心. 尽管之前看过一些Python的视频.书,算 ...
- ArcPy第一章-Python基础
学习Arcpy,从零开始积累.1.代码注释: python中,说明部分通常使用注释来实现: 方式: # 或者 ## + 注释部分内容2. 模块导入: 方式: import Eg: import arc ...
- 第一天-python基础
每一个今天的坚持都会改变明天的自己! 一.python介绍 python是一门由解释型.弱类型的高级开发编程语言,由龟叔于1989圣诞开发出,后经过二十多年的发展,因其简洁高效的特点而被广泛使用,在世 ...
- python第一章 python基础编程
第一次学习python 首先python对于我来说是我学习的第三门语言,之前大一学习过了c和c++这两门语言. 接触一个新语言,首先应该的是搭载一下编译的环境.我们是老师给我们上传了的python3安 ...
- 第一章 Python 基础
1. 为什么学习 Python? 答题路线:a.python的优点,b.python的应用领域广 具体: 优点 1.python语法非常优雅,简单易学 2.免费开源 3.跨平台,可以自由移植 4.可扩 ...
随机推荐
- java学习3-流程控制与数组
1.顺序结构 2.分支结构 3.循环结构 4.控制循环结构 break continue return 5.数组
- OsmocomBB软件实现栈概况
OsmocomBB软件实现栈概况 简单地说,本文仅描述软件中GSM信号接收到部分. 暂不提及发送流程,引导加载/引导流程,以及各种控制路径特别是从layer1到RF硬件. 首先,通过天线接收RF信号, ...
- 过滤器、拦截器和AOP的分析与对比
目录 一.过滤器(Filter) 1.1 简介 1.2 应用场景 1.3 源码分析 二.拦截器(Interceptor) 2.1 简介 2.2 应用场景 2.2 源码分析 三.面向切面编程(AOP) ...
- 在移动硬盘中安装win10和macos双系统
本文通过在SSD移动硬盘中安装win10和macos双系统,实现操作系统随身携带 小慢哥的原创文章,欢迎转载 目录 ▪ 目标 ▪ 准备工作 ▪ Step1. 清空分区,转换为GPT ▪ Step2. ...
- egg-mongoose --- nodejs
项目 egg + mongoose 项目结构 配置 egg 安装模块 npm i egg-mongoose --save config/pulgin.js exports.mongoose = { e ...
- mac os 10.15 virtualBox6.0.12崩溃
VBoxManage setextradata global GUI/HidLedsSync 0 参考:https://www.virtualbox.org/ticket/18990
- 转:NFS原理详解
原文:http://atong.blog.51cto.com/2393905/1343950 一.NFS介绍 1)什么是NFS 它的主要功能是通过网络让不同的机器系统之间可以彼此共享文件和目录.NFS ...
- MIT线性代数:2.消元法
- 使用ASP.NET Core 3.x 构建 RESTful API - 2. 什么是RESTful API
1. 使用ASP.NET Core 3.x 构建 RESTful API - 1.准备工作 什么是REST REST一词最早是在2000年,由Roy Fielding在他的博士论文<Archit ...
- P3105 [USACO14OPEN]公平的摄影(正解是乱搞,我却二分了)(+二分答案总结)
照例化简题意: 给定一个01区间,可以把0改成1,问其中最长的01数量相等的区间长度. 额很容易想到前缀和,把w弄成1,h弄成-1,然后求前缀和,然后乱搞就行了. 但是一直不太会乱搞的我却直接想到了二 ...