day1---python的基础特性

简介:

python的优点:

简单 优雅 明确

强大的模块三方库

易移植

面向对象

可扩展(c/java/c#...)

python的缺点:

代码不能加密

执行速度慢

python用来做什么?

一:软件开发

游戏后台 搜索 图形界面

网站 C\S软件 科学运算

二:系统管理

脚本 IT自动化工具


python的安装以及环境

查看版本

python -V

print ('hello world')  3.0以上的方法 要加括号

python 解释器

编程风格

语法要求

缩进统一  Indentationerorr  缩减错误

def main():

 print 'hello'

main()


变量 

标识符的第一个字符必须是字母表中的字母 或者一个下划算

标识符名称的其他部分可以由字母 下划线和数字组成

标识符名称是对大小写敏感的 例如:myname和myName 不是一个标识符

有效的标识符  i _my_name  name_23 a1b2_c3

无效的标识符 2things  this is spaced  my-name


数据类型  按特征划分

数字类型:整型>布尔型  长整型  标准整型   非整型>双精度浮点型  复数 decimal(不是内建类型)

序列类型:字符串str   元组tuple  列表list

映像类型: 字典dict   name={'alca':[28,'IT']}

集合类型:可变集合set    不可变集合frozenset


安可变型划分

可哈希的 不可变数据类型

数字类型 不可变集合forzenset 字符串 元组

可变数据类型

字典  列表 可变集合


编程风格 运算

1+1*3/2   2**32  平方

a=14 b=12  a>b a<=b  a!=b

赋值

name = alca

age = 26

运算符: + - * / %取模 **幂 //取整除  == 


+=  -=  *= /= %= **= //=  例如: c+=a  等于 c=c+a  


编程风格  注释

#'hello world'  #代表单行注释

'''  '''  三个引号 代表多行注释  同时也是 info =  多行格式打印 

单引号和双引号 可以镶嵌


ASSIC Unicode  utf-8  字符编码

ord('A') 来查询字符编码

name = u'范特西'

name 可以查看到范特西中文的assic码的值

name.encode 来转换字符编码 

name.decode 用来转回原来的字符编码

在程序中涉及中文 可以在脚本加上

#_*_ coding:utf-8 _*_


导入模块

什么是模块?

import os

os.system('执行命令')  返回0则代表执行成功

os.popen('pwd').read() 来进行存储模块

import commands

res=commands.getstatusoutput('pwd')  这种方式连同返回的结果也会显示出来

import sys

form sys import argv

import multiprocessing as multi

from sys import *


用户交互和格式化

Raw_input()

小程序

查询用户 姓名 年龄性别 工作 工资

以格式化的方式输出


#!/usr/bin/env python
#_*_ coding:utf-8 _*_

name = raw_input('please input your name:')
age = raw_input('age:')
job = raw_input('job:')
salary = raw_input('salary:')
print type('age')
print '''
Personal information of %s:
   Name: %s
   Age : %s
   Job : %s
 Salary: %s
______________________________
'''%(name,name,age,job,salary)


%s 代表字符串 %d 代表数字 %f 代表浮点数

raw_input 输入的默认就是字符串,如果想要age是数字  可以在前边加上int转换字符类型 或者直接使用input即可。


流程控制

if ....else...  for i in range(1,100)  while


name = raw_input('please input your name:')
age = input('age:')
job = raw_input('job:')
salary = raw_input('salary:')
#print type('age')
if age > 40:
   msg = 'you are too old!'
elif age > 30:
   msg = 'you stell have a few time!'
else:
   msg = 'you are still young!'


print '''
Personal information of %s:
   Name: %s
   Age : %d
   Job : %s
 Salary: %s
______________________________
%s
'''%(name,name,age,job,salary,msg)


for i in range()

name = raw_input('please input your name:')
job = raw_input('job:')
salary = raw_input('salary:')
real_age = 29
for i in range(10):
  age = input('age:')
  if age > 29:
   print'think smaller!'
  elif age == 29:
   print '\033[32;1mGood luck,10 rmb!!!\033[0m'
   break
  else :
   print 'think bigger'
  print 'you have %s shots!' % (9 - i)


print '''
Personal information of %s:
   Name: %s
   Age : %d
   Job : %s
 Salary: %s
______________________________

'''%(name,name,age,job,salary)


while

import sys

print_num = input('which loop do you want it to be print?:')
count = 0
while count < 10000000:

 if count == print_num:
      print 'there is your print number:',count
      choice = raw_input ('do you want to continue? y|n :')
      if choice == 'n':
          break
      else:
          while print_num <= count:
            print_num = input('which loop do you want it to be print?:')
            print "you are out!!!!!"
 else:
    print 'loop',count
 count += 1

else:
 print 'loop',count


课余作业:

编写登录接口

输入用户命密码

认证成功后显示欢迎信息

输错3次后锁定

本文转自岁月丶倾城博客51CTO博客,原文链接http://blog.51cto.com/alca0126/1624592如需转载请自行联系原作者


laihuadongcto

相关文章
|
1月前
|
存储 大数据 数据处理
Python 中的列表推导式与生成器:特性、用途与区别
Python 中的列表推导式与生成器:特性、用途与区别
24 2
|
2月前
|
机器学习/深度学习 人工智能 安全
python和Java的区别以及特性
Python:适合快速开发、易于维护、学习成本低、灵活高效。如果你需要快速上手,写脚本、数据处理、做点机器学习,Python就是你的首选。 Java:适合大型项目、企业级应用,性能要求较高的场景。它类型安全、跨平台能力强,而且有丰富的生态,适合更复杂和规模化的开发。
48 3
|
1月前
|
设计模式 监控 安全
Python多线程编程:特性、挑战与最佳实践
Python多线程编程:特性、挑战与最佳实践
38 0
|
1月前
|
设计模式 监控 安全
Python多线程编程:特性、挑战与最佳实践【1】
Python多线程编程:特性、挑战与最佳实践【1】
33 0
|
3月前
|
存储 数据库 C++
"深入剖析Python元组(tuple):与列表的对比、特性解析及高效应用场景展示"
【8月更文挑战第9天】Python元组与列表虽均用于存储元素集合,但有本质差异。元组不可变,创建后无法修改,适合保护数据不被意外更改的场景,如作字典键或传递固定值。列表则可变,支持动态增删改,适用于需频繁调整的数据集。元组因不可变性而在性能上有优势,可用于快速查找。两者各有千秋,根据具体需求选择使用。例如,元组可用于表示坐标点或日期,而列表更适合管理用户列表或库存。
105 1
|
3月前
|
安全 算法 Go
Python面向对象的三大特性
python面向对象编程(OOP)的三大特性是封装、继承和多态。这些特性共同构成了OOP的基础,使得软件设计更加灵活、可维护和可扩展。
32 3
|
3月前
|
机器学习/深度学习 运维 数据挖掘
scikit-learn 1.0 版本重要新特性一览
scikit-learn 1.0 版本重要新特性一览
|
4月前
|
机器学习/深度学习 数据采集 前端开发
网络爬虫开发:JavaScript与Python特性的小差异
我们以前写JavaScript的代码时,在遇到了发送请求时,都是需要去await的。 但是为什么Python代码不需要这样做呢? 这就是因为JavaScript是异步的,Python是同步的。 JavaScript就需要使用关键词await将异步代码块变为同步代码。
|
4月前
|
数据库 开发者 Python
Python 3.9的新特性有哪些?
【7月更文挑战第2天】Python 3.9的新特性有哪些?
55 1
|
5月前
|
API 项目管理 开发者
PEP是Python改进的关键文档,用于提议新特性和标准化变更
【6月更文挑战第26天】PEP是Python改进的关键文档,用于提议新特性和标准化变更。它们提出功能设计,记录社区决策,建立标准,促进共识,并改进开发流程。PEP是Python不断演进和优化的核心机制,驱动语言的未来发展。**
47 2