python如何限制数字范围为11位、否则报错_学习Python(一)

本文介绍了Python的基础知识,包括安装、第一个Python程序、变量规则、数据类型(如数字、布尔值、字符串、列表)以及字符编码、运算符、流程控制等方面。文章还探讨了Python中数字的限制,强调了如何限制数字为11位以及在Python2.7中处理中文字符的编码问题。最后,文章涵盖了文件操作和编码转换的概念,讲解了如何读写文件和处理文件编码。
摘要由CSDN通过智能技术生成

一、Python的基础

1、Python是怎样的语言?

2、Python的安装

Linux安装(python3)

yum install -y make zlib zlib-devel gcc-c++ libtool openssl openssl-devel gcc ncurses-devel libpcap-devel wget bzip2-devel

tar zxvf Python-3.5.2.tgz

cd Python-3.5.2mkdir-p /usr/local/python/3.5.2/lib

./configure --enable-shared --prefix=/usr/local/python/3.5.2 LDFLAGS="-Wl,-rpath /usr/local/python/3.5.2/lib"make

make install

ln-fs /usr/local/python/3.5.2/bin/python3.5 /usr/bin/python3

3、第一个Python程序

#!/usr/bin/env python

print"hello,world"

4、Python的变量

变量定义的规则:

变量名只能由数字、字母和下划线组成

不能以数字开头

禁止使用python中的关键字

变量名要具有可描述性

变量名要区分大小写

不能使用中文和拼音

推荐写法:

驼峰体

下划线(官方推荐)

AlexOfOldboy = 89    #这是驼峰体

alex_of_oldboy = 89 #这是下划线

变量的作用:

可变的量

存储数据

开发最大的忌讳是写重复的代码

5、二进制的介绍

二进制是计算技术中广泛采用的一种数制,二进制由用0和1组成,进位规则是“逢二进一”,借位规则是“借一当二”,计算机中的二进制则是一个非常微小的开关,用“开”来表示1,“关”来表示0。

十进制转二进制

256

128

64

32

16

8

4

2

1

1

0

0

0

0

0

0

0

0

6、字符编码

ASCII

美国标准信息交换代码,是基于拉丁字母的一套电脑编码系统,主要用于显示现代英语和其他西欧语言,其最多只能用8 位来表示(一个字节),即:2**8 = 256,所以,ASCII码最多只能表示 256 个符号。

Unicode

Unicode(统一码、万国码、单一码)是一种在计算机上使用的字符编码。

Unicode 是为了解决传统的字符编码方案的局限而产生的,它为每种语言中的每个字符设定了统一并且唯一的二进制编码,规定虽有的字符和符号最少由16 位来表示(2个字节),即:2 **16 = 65536

UTF-8

utF-8,是对Unicode编码的压缩和优化,他不再使用最少使用2个字节,而是将所有的字符和符号进行分类:ascii码中的内容用1个字节保存、欧洲的字符用2个字节保存,东亚的字符用3个字节保存..

小结

编码3种:ascii(256个,二进制8位长度表示)、unicode(至少二进制16位长度表示)、utf-8(同时可满足ascii和unicode两种表示,减少内存占用)

Python2.7版本默认是ascii码,只持256个,如果需要支持中文等字符,需使用utf-8编码模式,建议在代码的开头加入如下内容。声明编码

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

测试

#!/usr/bin/env python

print"你好"

7、数据类型

1)数字

int(整型):在64位系统上,整数的位数为64位,取值范围为-2**63~2**63-1

float(浮点型):浮点数用来处理实数,即带有小数的数字。类似于C语言中的double类型,占8个字节(64位),其中52位表示底,11位表示指数,剩下的一位表示符号。

2)布尔值

真或假 True或False1 或 0print(3 > 2) # True 成立

3)字符串

特性:不可修改

字符串常用功能

移除空白:strip(),默认为空格或换行符,只能删除开头或是结尾的字符,不能删除中间部分的字符,可以自定义字符,strip(123)。

分割:split(),通过指定分隔符对字符串进行切片,默认所有的空字符,包括空格、换行(\n)、制表符(\t)等,默认为-1, 即分隔所有。##以什么为分隔符,分割几次##

长度:len(),返回对象(字符、列表、元组等)长度或项目个数,

索引:index() ,检测字符串中是否包含子字符串,可指定范围,beg(开始,默认为0)和 end(结束,默认为字符串的长度),如果str不在 string中会报一个异常。

切片:slice(),实现切片对象,包含开始,结束,间距三个参数。

格式化输出

name = "jack"print"I am %s" %name

#输出: i am jack

PS:%s(字符串),%d(整数),%f(浮点数)

4)列表

创建列表

names = ['tom','jim','jack','boy','test','key']

基本操作:

切片:取多个元素(下标从0计数)

names[1:4] #取下标1到4的值,包括1,不包括4names[1:-1] #取下标1到-1的值,不包括-1names[:3] #取下标0到3的值,0可以忽略names[3:] #取下标3到最后的值,最后可以忽略names[3:-1] #取下标3到-1的值names[::2] #从下标0开始,每隔2个,取一个值,默认是1

追加

names.append("book") #追加到最后

插入

names.insert(2,"disk") #插入到下标2(下标1的后面)

修改

names[2] = "mark" #修改下标2的值

删除

del names[2] #删除下标2的值

names.remove("disk") #删除指定元素

names.pop() #删除列表最后一个值

扩展

b = [1,2,3]

names.extend(b)

names

['tom','jim','jack','boy','test','key',1, 2, 3]

拷贝

names_2 =names.copy()

names_2

['tom','jim','jack','boy','test','key',1, 2, 3]

统计

names.count("tom") #统计tom的次数

排序&翻转

names.sort() #排序,3.0不同数据类型不能在一起排序

names.reverse() #反转,倒序

获取下标

names.index("tom") #只能返回找到的第一个下标

names[names.index("tom")]="com" #查找并替换

8、运算

算数运算:

比较运算:

赋值运算:

逻辑运算:

成员运算:

身份运算:

位运算:

#128 64 32 16 8 4 2 1a= 60 #0 0 1 1 1 1 0 0b= 13 #0 0 0 0 1 1 0 1#a^ b = 0 0 1 1 0 0 0 1 = 49相同的得0,不同的得1

#a& b = 0 0 0 0 1 1 0 0 = 12上下的值必须均为1

# a| b = 0 0 1 1 1 1 0 1 = 61 上下的值只需有一个为1

运算符优先级:

9、注释

单行注视:用#

多行注释:"""被注释内容"""或 ''' 被注释内容 '''

用户交互

name = input("name:") #输入模块

age= input("age:")

job= input("job:")

info= '''---info--- #多行用'''或""""

Name:%s

Age:%s

Job:%s'''%(name,age,job)

print (info)

10、流程控制

1)If … else…

if:如果条件成立,执行

else:否则执行

场景:用户登陆验证

name = input("请输入你的名字:")

if name == "tom":

print ("登录成功")

else:

print ("登录失败")

2)If … elif … else …

用户输入3次失败后退出

name = "tom"pwd= 123

for i in range(3):

na_me= input("用户名:")

p_wd= int(input("密码:"))if name == na_me and pwd ==p_wd:

print ("登录成功")break

else:

print ("登录失败,请重新输入")

print ("您还有%d次机会" %(2-i))else:

print ("登录次数超过3次,请稍后重试")

用法:

# 第一种if条件:

pass

# 第二种if条件:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值