一、第一个python小程序

  首先我们要知道python创立的初衷是:Python崇尚优美、清晰、简单。

  所以python比起其他的语言需要的工作量少了一半都不止,比如和现在一直霸占语言排行榜  榜首的Java老大哥相比:

public  class HelloWorld:{
public static void main(String [] args) { system.out.println("hello world") } }

而伟大的python 只需要那么神奇的一行:

print("hello world")

python代码想输出什么直接print输出就可以了  切记 python文件是以.py结尾的

由此可见 python比起其他语言的冗杂真的有着得天独厚的优势  所以此时不选python 更待何时

二、python的变量

  首先我们要知道什么是变量。大家都知道 我们的生活中有很多的我们最开始不知道物体  比如男人最开始我们的祖先也不知道怎么来叫男人 女人  就随便先定义一个词语来代表男人 (我感觉最开始叫男人为人妖也可能),我个人感觉因为不清楚这个事物或者找一个元素来指向代表这个物体的 就是变量

  变量是什么?  变量:把程序运行的中间结果临时的存在内存里,以便后续的代码调用。

  name = " 红领巾"

  上述代码声明了一个变量,变量名为: name,变量name的值为:"红领巾"

  其实这在内存中就是有一块内存用来存储红领巾的的内容  如果只定义一个内容你不给一个地址去指向它 也不知道它如何被使用啊 ,就好比

你住在朝阳区长安街116号  但是你要告诉别人你住在这么牛掰的地方啊 不然别人怎么知道你的住址呢  。此时的name就是就是指向内存中开辟的存储“红领巾”的一个变量  name就是红领巾的引用

  

变量定义规则

  1. 变量名只能是 字母、数字或下划线的任意组合
  2. 变量名的第一个字符不能是数字                      
  3. 以下关键字不能声明为变量名['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']

  肯定有人为什么这个规定  ,就好比你是男人你要娶妻这是必须要经历的  你如果非要生孩子那么这特么也行不通啊 所以不要违背规则 如果你想 违背规则那么你就要有创建规则的能力

  存储的的数据是变量值,变量名和变量值是一种绑定关系,变量名本身并无存储值的功能,

定义方式

驼峰体

AgeOfOldboy = 56
NumberOfStudents = 80

下划线

age_of_oldboy = 56
number_of_students = 80

你觉得哪种更清晰,哪种就是官方推荐的,我想你肯定会先第2种,第一种AgeOfOldboy咋一看以为是AngelaBaby

三、常量

   常量即指不变的量,如3.1415926.........,或在程序运行中不会改变的量。程序员约定俗称用变量名全部大写代表常量。

例如:AGE_SD=56    仅仅只是一种提示效果。反正你就记住 全部大写的字母就是常量  除非那个老几 是刚入门的小鸟鸟

四、基本数据类型

  我们人类可以很容易的分清数字与字符的区别,但是计算机并不能呀,计算机虽然很强大,但从某些方面有很笨,你得明确的告诉它,“1”是数字,“汗”是文字。否则计算机是分不清的。因此,在每个编程语言中都会有一个叫数据类型的东西,其实就是对常用的各种数据类型进行了明确的划分,你想让计算机进行数值运算,你就传入数字给它,你想让它处理文字,你就传字符串类型给它。python中有很多数据类型,今天我们先了解数字,字符串,布尔类型。

1.数字:int(短整型)

   long(长整型)(在python三中没有了)

2.字符串str:

  包含在引号(单,双,三)里面,由一串字符组成
  用途(描述性的数据):姓名,性别,地址,学历,密码:alex3714
  name='egon'

  取值:
  首先要明确,字符串整体就是一个值,只不过特殊之处在于:
  python中没有字符类型,字符串是由一串字符组成,想取出字符串中
  的字符,也可以按照下标的方式取得

  name:取得是字符串整体的那一个值
  name[1]:取得是第二位置的字符

  字符串拼接:
  >>> msg1='hello'
  >>> msg2=' world'
  >>>
  >>> msg1 + msg2
  'hello world'
  >>> res=msg1 + msg2
  >>> print(res)
  hello world

  >>> msg1*3
  'hellohellohello'

五、什么是计算机交互?

  name=input("请输入用户名:")

  无论输入何种类型的数据,input都会将他存成字符串格式

  为什么要有程序交互?

  让计算机能够模拟人,让计算机去接受用户的输入信息.

  重点:一定要记住 input输入的都是字符串类型的 哪怕是数字它打印出来的也是字符串类型的

  eg:age = input("请输入你的年龄")

    如果你是输入20输出就是:“20”  会加上引号 所以 input输出的都是字符串 如果是数字 它会默认把数字加上引号

六、循环

  循环是为了让你的计算更加的高效率更加的便捷化

  if循环:

    一般的学过其他的语言的小鲜肉们肯定知道都是有什么if...else之类的  这个也差不多 。如果没学过的老腊肉也不要着急 ,因为这个很简单的(虽然我学起来不简单 可能我特么脑子不够吧)

  

  if 判断语句 :

    输出语句     (切记判断语句后的:英文输入法的分号 必须要有的)

  if 判断语句 :

    输出语句

  elif 判断语句:

    输出语句

  

if 条件:
满足条件执行代码
elif 条件:
上面的条件不满足就走这个
elif 条件:
上面的条件不满足就走这个
elif 条件:
上面的条件不满足就走这个
else:
上面所有的条件不满足就走

if 条件 :

  满足条件执行的代码

else :

  不满足条件执行的代码

也可以if  elif  else 一起使用

if 条件 :

  满足条件执行的代码

elif 条件:

  满足条件执行的代码

else

  不满足执行的代码

建立一个循环小语句
weather = input(“请输入天气”) #使用人机交互模式定义判断一个变量 if weather == "阴天": #当天气不满足时候 就执行这一句
print(“回去找找妈妈”)
elif weather == “晴朗” :#天气满足输出这一个
print(“可以出去大保健”) else:
print(“滚回去 不许出去”)

while循环

  while循环其实也就是比if  循环多那么一点点的小的功能的,毕竟尺有所短寸有所长,所以我们也可以用while来做一些不同的事情的,这个就要视情况而定了

  while 条件:

     
    # 循环体
 
    # 如果条件为真,那么循环体则执行
    # 如果条件为假,那么循环体不执行

  while循环还可以和else相结合,不过这种用的比较少 但是  我们还是要了解的

  如果whiel循环被break打断了 那么整个循环都不走else的语句

  while 判断条件:

    满足时候执行的内容

  else:

    不满足执行的内容

循环中止语句:

  大家可以思考下 都有循环 肯定也应该有终止循环的语句,因为不能一直让循环语句一直继续下去啊,所以break和continue就此诞生了。

break是终止使用它的循环,而continue是终止这一个语句  使程序回到起始点开始重新执行

个人小练习:

使用while输出 1 2 3  4 5 6 8 9 10

num = 0
while num < 10 :
num +=1
if num == 7 :
continue
else :
print(num)

求 1-100 所有数的和

#首先你肯定要定义两个变量一个用来表示 1-100内的所有的数字 然后再定义一个变量 用来表示 这些数字的总和

x= 1
y = 0 while num <= 100 :
y = num +y
if num == 100 :
break num += 1
print(y)

求 100 以内的所有的奇数

num = 1

while num <= 100 :
if num % 2 == 1 :
print(num)
num += 1

求 100 以内 所有的偶数

num = 1

while num <= 100 :
if num % 2 == 0 :
print(num)
num += 1

求100以内所有的奇数的和

num = 1

y = 0

while num <=100 :
if num %2 == 1 :
y = y+num
num +=1
print (y)

求1-2+3-4+5 ... 99的所有数的和

x = 1
y = 0 while x < 100 :
if x %2 == 0:
y = y -x
elif x %2 != 0 :
y = y +x
x +=1
print (y)

打印一个三角形

x = 0
while x < 5 :
x+=1
print("*"*x)

打印一个矩形

x= 0
while x < 5 :
y = 0
while y < 5 : print("*",end = "")
y +=1
print("")
x += 1

用while 嵌套来做一个 三角形

x =
while x <= :
y = #这个y等于1 也是循环的画龙点睛之处
while y <= x: #这一步的y小于等于x是很重要的 print ("*",end="") y += print("")
x +=

in ,not in

  in 顾名思义就是在其里面的,not in 就是不在其里面 这两个绝大多数是判断是否在其里面 在里面就是in  不在就是not in 在看字面意思也该知道啊(我这么笨也该知道的,不清楚的请出门面壁去)

    

name = "wag 王"

if w in name ;  #用in 来判断语句
print("在里面的 是正确的") if e not in : #用not in 来当判断语句
print("没有 需要重新判断")

格式化输出:

  大家可以想象下  你如果想打印出一整个区里面的人员的姓和 年龄符不符合领取补助的条件的话 你难道需要把每个人的都自己敲一遍 输出吗 ?NO,这样太low ,这个时候我们可以定义一个模板,输入一个人就打印出一个人的信息,但是这样需要定义一个模板 来让所有人都通用,此时就需要用到了占位符了 格式化输出 : %s 替字符串或者数字占位置,%d替数字占位置  一点记住 %s既可以替换 字符串 也可以替换 数字

  

name = input("请输入你的姓")
age = int(input("输入您的年龄")) if name == "李" and age > 40 :
msg = "您符号条件,您的姓名是:%s , 年龄是:%d" % (name , age ) #这个时候的%s就是为之前的字符串占位置 %d就是为数字占位置 为了方便大家的输出
print(msg)
else :
print("对不起 您的条件不符合 ")

练习2:

while True :
name = input("name:")
age = input("age:")
sex = input("sex:")
height = input("height:")
msg = '''
--------%s info ------ name:%s
age:%s
sex:%s
height:%s
------------------------- '''%(name,name,age,sex,height) print(msg)

如果想在打印中输出单纯的%符号 那么需要输入两个%%

#在格式化输出的中淡出的显示% 用%%解决

name = input('请输入您的姓名')
age = input("请输入您的年龄")
msg = '我叫 %s ,今年:%d岁 , 学习进度为1%%' % (name , int(age) ) #因为想打印出两个%%必须用%%来表示
print(msg)

%s既可以替换 字符串 也可以替换 数字:

name = "老王"
age = 16 msg = "姓名:%s, 年龄:%s" % (name , age ) #此时就可以看出%s不仅仅只可以替代字符串 还可以替代数字
print(msg)

还有一个%r是把后面指向输出原样输出 连引号到打印出来:

  也就是你定义的是字符串那么用了%r当作占位符的话  那么输出的也是  字符串类型的

  

逻辑运算符:( )   and   or

运算顺序:()>not> and > or   先算()内的比较  再进行and的比较  再进行  or的比较

比较and 如果两边的结果都是True 就都是True 如果只有一个是True那么就是Flase

比较or 如果两边有一个是True那么就是True

x or y   if x True 则 return  x 否则 return y    细细品味这段话真的很有味道  体会完成 你就全部理解这个运算符and  和or 的比较了

大家还要记得 所有的数字中只有0代表Flase 除了0哪怕负数 也都是True

如果or的比较 如果前面发现了是True那么后面的几乎不用看了就是True

  可以理解为因为0是Flase 但是3是True所以就是输出true就是输出3,第二个因为1就是True所以直接就输出1不看后面的了

数据类型的转换:

  int -----> bool   非0既True 0为False

  bool-----> int  True为 1 ,False 为0

  

  

什么是字符编码

  因为计算机是外国人创造的所以计算机最开始只能识别最开始的基本数字(毕竟是外国人创造的所以最开始是不支持伟大的汉语 ,所以everybody努力学习吧  创造 我们自己的伟大的技术)

  计算机要想工作必须通电,也就是说‘电’驱使计算机干活,而‘电’的特性,就是高低电平(高低平即二进制数1,低电平即二进制数0),也就是说计算机只认识数字

  

  很明显,我们平时在使用计算机时,用的都是人类能读懂的字符(用高级语言编程的结果也无非是在文件内写了一堆字符),如何能让计算机读懂人类的字符?

  必须经过一个过程:

  字符--------(翻译过程)------->数字

  这个过程实际就是一个字符如何对应一个特定数字的标准,这个标准称之为字符编码

  以下两个场景下涉及到字符编码的问题:

  1:一个python文件中的内容是由一堆字符组成的(python文件未执行的时候)

  2:python 中的数据类型,字符串是由一串字符组成的(python文件执行的时候)

字符编码的发展史

阶段一:现代计算机起源于美国,最早诞生也是基于英文考虑的ASCII

  ASCII:一个Bytes代表一个字符(英文字符/键盘上的所有其他字符),1Bytes=8bit,8bit可以表示0-2**8-1种变化,即可以表示256个字符

    ASCII最初只用了后七位,127个数字,已经完全能够代表键盘上所有的字符了(英文字符/键盘的所有其他字符)

    后来为了将拉丁文也编码进了ASCII表,将最高位也占用了

阶段二:为了满足中文,中国人定制了GBK

  GBK:2Bytes代表一个字符

  为了满足其他国家,各个国家纷纷定制了自己的编码

  日本把日文编到Shift_JIS里,韩国把韩文编到Euc-kr

阶段三:各国有各国的标准,就会不可避免地出现冲突,结果就是,在多语言混合的文本中,显示出来会有乱码。

于是产生了unicode, 统一用2Bytes代表一个字符, 2**16-1=65535,可代表6万多个字符,因而兼容万国语言

但对于通篇都是英文的文本来说,这种编码方式无疑是多了一倍的存储空间(二进制最终都是以电或者磁的方式存储到存储介质中的)

于是产生了UTF-8,对英文字符只用1Bytes表示,对中文字符用3Bytes

需要强调的一点是:

unicode:简单粗暴,所有字符都是2Bytes,优点是字符->数字的转换速度快,缺点是占用空间大

utf-8:精准,对不同的字符用不同的长度表示,优点是节省空间,缺点是:字符->数字的转换速度慢,因为每次都需要计算出字符需要多长的Bytes才能够准确表示

    

  

python 基础-----数字,字符串,if while 循环 数据类型的转换简单介绍的更多相关文章

  1. python基础--2 字符串

    整型 int python3里,不管数字多大都是int类型 python2里面有长整型long 将整型字符串转换为数字 # a='123' # print(type(a),a) # b=int(a) ...

  2. python基础、字符串和if条件语句,while循环,跳出循环、结束循环

    一:Python基础 1.文件后缀名: .py 2.Python2中读中文要在文件头写: -*-coding:utf8-*- 3.input用法      n为变量,代指某一变化的值 n = inpu ...

  3. python基础(字符串常用、数字类型转换、基本运算符与流程控制)

    一.字符串常用操作: #! /usr/bin/env python # -*- coding: utf-8 -*- # __author__ = "Z'N'Y" # Date: 2 ...

  4. Python基础 数字、字符串、列表、元组、字典

    Number(数字)---> int.float.complex(复数) class int 在Python3中,整形(int)就是常见的整数:1,100,500,1000...... 浮点型( ...

  5. Day2 Python基础学习——字符串、列表、元组、字典、集合

    Python中文学习大本营:http://www.pythondoc.com/ 一.字符串操作 一.用途:名字,性格,地址 name = 'wzs' #name = str('wzs')print(i ...

  6. python基础——数字&集合&布尔类型

    Python的核心数据类型 内置对象 对象类型 例子 数字 123,3.1415,3+4j,Decimal(小数),Fraction(分数) 字符串 'dodo',"guido's" ...

  7. Python基础(1)——变量和数据类型[xiaoshun]

    目录 一.变量 1.概述 Variables are used to store information to be referenced(引用)and manipulated(操作) in a co ...

  8. Python基础(二) —— 字符串、列表、字典等常用操作

    一.作用域 对于变量的作用域,执行声明并在内存中存在,该变量就可以在下面的代码中使用. 二.三元运算 result = 值1 if 条件 else 值2 如果条件为真:result = 值1如果条件为 ...

  9. python学习第四讲,python基础语法之判断语句,循环语句

    目录 python学习第四讲,python基础语法之判断语句,选择语句,循环语句 一丶判断语句 if 1.if 语法 2. if else 语法 3. if 进阶 if elif else 二丶运算符 ...

随机推荐

  1. 容器挂载volume出现“Permission denied”的问题定位解决

    使用如下系统(centos)运行容器后,在容器内的挂载目录内执行ls命令出现了“Permission denied”的错误 Linux localhost.localdomain 3.10.0-862 ...

  2. 自然语言处理--TF-IDF(关键词提取)

    TF-IDF算法 TF-IDF(词频-逆文档频率)算法是一种统计方法,用以评估一字词对于一个文件集或一个语料库中的其中一份文件的重要程度.字词的重要性随着它在文件中出现的次数成正比增加,但同时会随着它 ...

  3. Pelican+Github博客搭建详细教程

    操作系统:Mac OS / Linux 工具集: 1.Pelican--基于Python的静态网页生成器 2.马克飞象--Evernote出的Markdown文本编辑器 3.GoDaddy--域名供应 ...

  4. MySQL 报错MySQL server syntax to use near 'OPTION SQL_SELECT_LIMIT=DEFAULT'

    在hive的应用中,出现如下错误时You have an error in your SQL syntax; check the manual that corresponds to your MyS ...

  5. Hive中自定义Map/Reduce示例 In Python

    Hive支持自定义map与reduce script.接下来我用一个简单的wordcount例子加以说明.使用Python开发(如果使用Java开发,请看这里). 开发环境: python:2.7.5 ...

  6. 玩转Git之初识Git

    git是什么 Git是一款免费.开源的分布式版本控制系统,用于敏捷高效地处理任何或小或大的项目 Git 和 svn 有什么区别 它们之间的主要区别是Git是分布式的,而svn是集中式. 当然Git也可 ...

  7. Golang 并发Groutine实例解读(一)

    Go语言的并发和并行 不知道你有没有注意到一个现象,还是这段代码,如果我跑在两个goroutines里面的话: var quit chan int = make(chan int) func loop ...

  8. Tornado简介

    Tornado是一个具有强大异步功能的Python Web框架. Hello World 使用pip安装tornado: pip install tornado 编写控制器: import torna ...

  9. MySQL中一个sql语句包含in优化问题

    第一版sql: SELECT module.id, module.module_name, module.module_code `module` where IN (module.did_acces ...

  10. 本地启动activemq,报错解决

    本地启动activemq时,报错.可以看到是5672端口被占用.在网上查了各种资料,有说是杀掉进程的,有说是禁用Internet Connection Sharing (ICS)服务的,楼主试了都没生 ...