Python杂写1
一:编程及编程语言介绍
编程的目的:人把自己的思想流程表达出来,让计算机按照这种思想去做事,把人给解放出来。
编程语言:简单的说就是一种语言,是人和计算机沟通的语言。
编程:例如Python,利用Python的关键字和规定的语法把人的思想表达出来就是编程的过程。学习语言的过程,像学习英语一样
记单词,学习语法。
编程语言分类
1)按照发展历程来分
机器语言:直接使用二进制编程,直接操作硬件,编程复杂,开发效率低
汇编语言:使用简写的英文字符取代二进制去编写程序,但本质仍是直接操作硬件,编程复杂
开发效率低。
高级语言:使用人类的字符去编写程序,执行速度慢,但开发效率高。
2) 按照翻译方式进行分类
编译型:需要编译器,一次性编译,运行速度快,但不利于调试。
解释型:需要解释器,相当于同声翻译,运行速度慢,但利于开发调试。
3)总结
速度不是关键,开发效率才是王道。
二:Python介绍及安装
2.1 主要编程语言介绍
以下是2017年9月份各大主流语言排名(https://www.tiobe.com/tiobe-index/ )
2.2 Python 主要应用
1.web开发
2.网络编程
3.爬虫,Python几乎是霸主地位
4.云计算
5.人工智能
6.自动化运维
7.金融分析
8.科学计算
9.游戏开发
2.3 Python安装(windows)
Python官方网站 https://www.python.org 以下以下载3.6为例
Python多版本使用教程
Python2.7 安装
这里我们看下我们安装的目录下有两个需要了解的可执行程序
那么接下来需要设置环境变量
Python3.6安装
我们开始设置环境变量
在设置环境变量之前,我们把Python解释可执行程序复制一份儿,改名为Python3,这样在输入Python3后会调用Python版本为3的解释器
### 一般情况下我们不会使用这种交互模式进行开发,因为一旦退出,代码就没了,但我们可以使用交互模式进行调试代码
### 通常我们会使用文本编辑器使用文本将代码保存到磁盘
例如:我们使用Notepad进行编辑
print('Hello World')----------->test.py
我们使用交互模式 python3 test.py运行时主要进过如下三个步骤
1)启用Python解释器 2)将文件内容读取到内存中 3)执行该文件内容
三:变量(variables)
3.1 变量的定义:
变量即变化的量,边即变化,量即衡量状态
3.2 为什么要有变量
程序执行的本质就是一系列的变化,我们需要有一种机制能够反映或者说是保存下来程序执行时的状态及状态的变化。
3. 变量三要素
变量ID(反映在内存的位置,但不时内存真是地址),type,value.
age=18
print(id(age),type(age),age)
# 返回结果
# 分别是age的ID,类型,值
#1851050192 <class 'int'> 18
name='wangchen'
print(id(name),type(name),name)
返回结果
#分别时变量name在内存的id,类型,值
2631740071344 <class 'str'> wangchen
3.变量定义规则
1)只能是字母,数字,下划线的组合
2)第一个字符不能是数字
3)关键字不能声明为变量名
3. 定义方式
1)驼峰体
AgeOfWys=20
2)下划线(推荐)
age_of_wys=20
3. 常量(定值)
我们一般将常量大写
AGE=20
四:用户与程序交互
使用input来跟用户进行交互,为了以后要使用用户输入的内存,我们常将其定义为一个变量,即通过交互式的方式定义一个变量
需要注意的是:在python3中无论用户输入的是何种类型数据,都会存成字符串类型
name=input('Please input your name: ')
print(id(name),type(name),name)
# 输入一个字符串
Please input your name: wys
2020067618920 <class 'str'> wys
# 输入一个数字
Please input your name: 18
2670300934248 <class 'str'> 18
五:注释和文件头
5.1 文件头
#!/usr/bin/env python 声明解释器
# -*- coding: utf-8 -*- 声明编码
5.2 注释
#单行蛛丝
#name=input('Please input your name: ')
#print(id(name),type(name),name)
#多行注释
'''
sfddsfsdf
sfsdfsdfsd
sdfsdfsdf
'''
六 基本数据类型
6.1 数字类型
int整型:年纪,身份证号等 ;变量名=数字
age=20
print(id(age),type(age),age)
#运行结果如下
1851050256 <class 'int'> 20
浮点型:带小数的数据,比如身高等等 ;变量名=数字
height=1.75
print(id(height),type(height),height)
#运行结果
1884371357888 <class 'float'> 1.75
6.2 字符串类型
定义方法:把字符放入单引号,双引号,后者三引号之间,这三种引号作用是一样的,只是在一些特殊场合才会有区别。
name='wangyongsheng'
print(type(name))
#运行结果
<class 'str'>
字符串拼接
#1.将两个字符串拼接成一个
name='wangchen'
msg='handsome'
print(name+msg)
##运行结果
wangchenhandsome #2.注意:字符串拼接仅限字符串之间拼接
name='wangchen'
msg='handsome'
age=20
print(name+msg+age)
##运行结果
TypeError: must be str, not int 数据类型错误
##可以将数字转换成字符串进行拼接
print(name+msg+str(age))
wangchenhandsome20
#3.使用*进行拼接
print(name*3)
wangchenwangchenwangchen
#4.字符串之间只能用“+”或者“*”
#5.当字符串比较大时不建议使用+进行拼接了
6.3 列表
定义方法:定义在[]内,用逗号分隔开多个元素,每个元素可以时任意类型
#可以存取多个值
#1.定义一个人的爱好
hobbies=['play','read','music','movie']
print(type(hobbies))
<class 'list'>
#2.将其中某个值取出来
print(hobbies[3])
print(hobbies[0])
# 3.倒着取值
print(hobbies[-1])
movie
# 4.超出范围取值
##会报错
print(hobbies[12])
IndexError: list index out of range
# 5,因为列表内可以定义任何类型数据
a=[20,1.75,'wangchen',['hello','world']]
print(a[0])
print(a[1])
print(a[2])
print(a[3][0])
print(a[3][1])
#运行结果
20
1.75
wangchen
hello
world
6.4 字典类型
定义:定义在{}内,用key:value的形式表示一个元素,用逗号分隔
info={'id':123,'name':'wangchen','hobbies':['read','play']}
print(info['id'])
print(info['name'])
print(info['hobbies'])
print(info['hobbies'][0])
print(info['hobbies'][1])
6.5 布尔类型
只有两个值 true,false 主要用于逻辑判断
七:格式化输出
根据用户输入打印出特定格式
name=input('user_name: ')
age=input('user_age: ')
# My name is xxx ,i am xx year old.
# %s 占位符 可以接受任意数据类型
print('My name is %s,i am %s year old '%(name,age))
# %d 占位符 只能接受整型数据(因为input后数据都时字符串了,故会报错)
print('My name is %s,i am %d year old '%(name,age))
TypeError: %d format: a number is required, not str
八 流程控制之if判断
# 如果用户你输入年龄大于30,就叫姐姐,小于30就叫妹妹
age=input('>>: ')
# 因为传给input后时字符串类型故要转换为int进行比较
age=int(age)
if age > 30:
print('姐姐')
else:
print('妹妹')
if 多条件判断
# 多个条件,性别时女性,年龄18-30,漂亮 然后我就表白,否则叫阿姨
sex=input('sex>>: ')
# 要进行数字比较,需要转换成数字类型
age=int(input('age>>: '))
# 要进行布尔类型比较,需要转换成布尔类型
is_prety=bool(input('is_p>>: '))
if sex == 'female' and age > 18 and age < 30 and is_prety == True:
print('表白。。。。。。。。。')
else:
print('阿姨好。。。。。。。')
if 嵌套
# if嵌套,如果该人性别是女性,年龄18-30,漂亮 ,表白成功就在一起,表白失败就继续追求,否则叫阿姨
sex=input('sex>>: ')
# 要进行数字比较,需要转换成数字类型
age=int(input('age>>: '))
# 要进行布尔类型比较,需要转换成布尔类型
is_prety=bool(input('is_p>>: '))
SUCESS=False
if sex == 'female' and age > 18 and age < 30 and is_prety == True:
if SUCESS:
print('在一起')
else:
print('继续追求')
else:
print('阿姨好。。。。。。。')
if 多分支
score=int(input('>>>: '))
if score >= 90:
print('优秀')
elif score >= 80:
print('良好')
elif score >= 60:
print('及格')
else:
print('不及格')
九:过程控制之while循环
# 如下一个猜年龄游戏
AGE_OF_LAOWANG=60
guess=int(input('>>>: '))
if guess > AGE_OF_LAOWANG:
print('太大了')
elif guess < AGE_OF_LAOWANG:
print('太小了')
else:
print('对了') # 上述程序只能让用户猜一次(不好) while 条件成立
循环体 # 打印0到9的程序
Python杂写1的更多相关文章
- python杂写
一:用户交互 与用户交互主要使用input,这里需要说明三点: 1:input会等待用户输入 2:会将输入的内容赋值给变量 3:input出的变量都是字符串类型(str) 例子1:注意,因为input ...
- Python - 动手写个ORM
Python - 动手写个ORM 任务: 模拟简单的ORM - Object Relational Mapping 为model添加create方法 代码很简单,直接上 字段类型类 class Fie ...
- python中写shell(转)
python中写shell,亲测可用,转自stackoverflow To run a bash script, copy from stackoverflow def run_script(scri ...
- Python urllib2写爬虫时候每次request open以后一定要关闭
最近用python urllib2写一个爬虫工具,碰到运行一会程序后就会出现scoket connection peer reset错误.经过多次试验发现原来是在每次request open以后没有及 ...
- (转)Python新手写出漂亮的爬虫代码2——从json获取信息
https://blog.csdn.net/weixin_36604953/article/details/78592943 Python新手写出漂亮的爬虫代码2——从json获取信息好久没有写关于爬 ...
- (转)Python新手写出漂亮的爬虫代码1——从html获取信息
https://blog.csdn.net/weixin_36604953/article/details/78156605 Python新手写出漂亮的爬虫代码1初到大数据学习圈子的同学可能对爬虫都有 ...
- python手写bp神经网络实现人脸性别识别1.0
写在前面:本实验用到的图片均来自google图片,侵删! 实验介绍 用python手写一个简单bp神经网络,实现人脸的性别识别.由于本人的机器配置比较差,所以无法使用网上很红的人脸大数据数据集(如lf ...
- [置顶]
如何用PYTHON代码写出音乐
如何用PYTHON代码写出音乐 什么是MIDI 博主本人虽然五音不全,而且唱歌还很难听,但是还是非常喜欢听歌的.我一直在做这样的尝试,就是通过人工智能算法实现机器自动的作词和编曲(在这里预告下,通过深 ...
- 基于七牛Python SDK写的一个批量下载脚本
前言 上一篇基于七牛Python SDK写的一个同步脚本所写的脚本只支持上传,不支持文件下载. 虽然这个需求不太强烈,但有可能有人(在备份.迁移时)需要,而官方有没提供对应的工具,所以我就把这个功能也 ...
随机推荐
- 【Math for ML】矩阵分解(Matrix Decompositions) (下)
[Math for ML]矩阵分解(Matrix Decompositions) (上) I. 奇异值分解(Singular Value Decomposition) 1. 定义 Singular V ...
- 什么是 java.awt.headless
以下是网上的说法,我觉得简单地说就是有些功能需要硬件设备协助,比如显卡,但如果是服务器可能都没装显卡,这时就需要JDK调用自身的库文件去摸拟显卡的功能. 什么是 java.awt.headless? ...
- 国产 WEB UI 框架 (收费)-- Quick UI,Mini UI
国产 WEB UI 框架 (收费)-- Quick UI,Mini UI : http://www.uileader.com/ http://www.miniui.com/
- 待解决close
关于close语句放在哪里,貌似会对结果产生影响 #include <iostream> #include <fstream> using namespace std; int ...
- mongodb导入导出数据
导出 mongoexport -d DB_NAME -c COLLECT_NAME -o FILE_NAME 例:mongoexport -d db_test -c data_result -o da ...
- centos7 部署rabbitmq
1.安装 Erlang 就想我们编写Java引用程序需要安装 JDK一样,安装 RabbitMQ ,我们也需要安装 Erlang . ①.下载 erlang 安装包 将安装包下载到 /home/erl ...
- windows 2012执行powershell脚本报错
使用powershell运行脚本报错:进行数字签名.无法在当前系统上运行该脚本.有关运行脚本和设置执行策略的详细信息 修复方法:powershell "Set-ExecutionPolicy ...
- CSS基础入门
css基础语法 一.CSS格式 选择器{ 属性名:属性值; 属性名:属性值; } 选择器负责圈定范围,要修改的元素集合,花括号内的声明由属性名和属性值组成(key:value)的形式,用于设定具体样式 ...
- Python中join()函数方法
函数:string.join() Python中有join()和os.path.join()两个函数,具体作用如下: join(): 连接字符串数组.将字符串.元组.列表中的元素以指定的字 ...
- nginx 配置白名单
在http 模块 增加 geo $remote_addr $ip_whitelist{ default 0; include white_ip.conf; } 在location 模块 增加 (注意i ...