Python之路-Day2

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Python之路-Day2相关的知识,希望对你有一定的参考价值。

二进制

1bit = 一个二进制位

8bit = 1byte

 

循环

for

while

数据类型

  数字、字符串、列表、元祖、字典、集合

  字符编码

  文件处理

for循环:

for i in range(10)    range表示从0-9中一次取数[0,1,2,3,4,5,6,7,8,9],  打印0-4的格式为range(0,5)

for循环中也有else,如果for循环正常执行完,就执行else下面的语句。可以判断循环是否顺利执行完毕

for i in range(3):
    age = int(input(nianling:))
    if age == 22:
        print("you are right")
        break
    else:
        print("try")
else: #若果循环顺利执行,就执行else
    print("haha")
print("1111")

嵌套循环:

break:跳出整个当层循环。

continue:跳出当次循环,进入下次循环。

for i in range(10):
    for j in range(10):
        if j < 5:
            continue
        print(i,j)

while循环

count = 0
while count < 100:
    print(haha)
    count +=1

 回到上面for 循环的例子,如何实现让用户不断的猜年龄,但只给最多3次机会,再猜不对就退出程序。

count = 0
age = 29
while count < 3:
    user_input = int(input(input you guess:))

    if user_input == age:
        print(right)
        break
    elif user_input > age:
        print(bigger)
    elif user_input < age:
        print(smaller)
    count +=1
else:
    print(太笨了)

 

变量:用来记录状态。

变量值:记录状态的变化。

程序运行:处理一系列状态的变化。

 

数据类型

1.数字

2.字符串

3.列表

4.元组

5.字典

 

数字

特性:

1.只能放一个数

2.一经定义,不可更改

整形、长整形(python3种没有长整形)

1.int(10,base=2)   告知int,我输入的是2进制数。

age = 10 ----> int(10) -------> __init__

2.布尔bool:

True和False

3.浮点型float:

4.复数:

复数由实数部分和虚数部分组成,一般形式为x+yj,其中的x是复数的实数部分,y是复数的虚数部分,这里的x和y都是实数。

整形与浮点做运算,得出的结果是浮点型。

字符串

print(r‘asdf\\ndfd‘) -------r表示按书写的内容输出    在shell中\\n是换行。

msg = ‘hello world‘

print(msg.capitalize()) 首字母大写

print(msg.center(20,‘*‘))  居中,首尾各空20,以*填充

print(msg.count(‘l‘,4,9))统计数量,从左边数第4索引个开始,到第九个结束。 

print(msg.endswith(‘l‘)) 以...结尾 (判断)

msg1 = ‘a\\tb‘

print(msg1.expendtabs(10))   增加tab的长度

print(msg[10])    打印第十个索引

注意:tab键占一个位置。

print(msg.find(d))  找到这个元素所对应的索引。如果没找到就会返回-1,只要在范围内出现第一个符合条件的就会停止寻找。

花括号声明{}、用于渲染前的参数引用声明, 花括号里可以用数字代表引用参数的序号, 或者 变量名直接引用。

print(‘{0}{1}‘.format(‘name‘,‘age‘))  可以多次取数  print(‘{0}{1}{1}‘.format(‘name‘,‘age‘))

print(‘{name}‘.format(name=‘alex‘))   调用变量值

print(‘{}{}‘.format(‘name‘,‘age‘))    一一对应

print(msg.index(‘e‘))    取索引,取第一个遇到的。

msg3 = ‘a123‘

print(msg3.isalnum)   al代表字母,num代表数字,判断字符串是否由字母和数字组成。

print(msg.isalpha)   判断是否是字母组成

msg4 = "10"   isdigit 判断是否是整形

print(msg4.isdigit())

msg5 = "10.2"  isdecimal 判断字符串是否只包含十进制字符,是返回True,否则返回False

print(msg5.isdecimal())

msg6 = ‘12312332‘

print(msg.isnumeric()) 判断是否是数字。

isidentifier判断是否是关键字,一个单词中是否包含关键字。

msg7 = ‘while‘

print(msg7.isidentifier())

msg9 = ‘aaa‘

print(msg9.islower())小写     isupper全都是大写

msg10 = ‘ ‘

print(msg10.isspace()) 判断是否有空格

msg11 = ‘Hello‘

print(msg11.istitle()) 判断是否是标题

ljust 左对齐 rjust 右对齐 

msg13 = ‘abc‘

print(msg13.ljust(10,‘*‘))

lower将大写转化为小写,upper将小写转化为大写。

print(msg13.lower())

msg = ‘ 2323  ‘
print(msg.strip()) #去掉首尾空格 如果在stip的()中填写的字符串,表明要删除
print(msg.rstrip()) #去掉右边空格
print(msg.lstrip()) #去掉左边空格

msg16 = ‘my name is abcd‘
table = str.maketrans(‘abcd‘,‘alex‘)#做一张表(table)
print(msg16.translate(table)) #翻译(翻译的长度必须相同)

msg = ‘abc‘
print(msg.zfill(20)) #右对齐,不够用0
print(msg.rjust(20,‘0‘))
print(msg.ljust(20,‘0‘))

字符串常用功能:
1.移除空白
2.分割 -----取范围 print(msg[0:3]) 顾头不顾尾 [0:3:2]如果再加一个:表示步长
msg = ‘nihao 123‘
print(len(msg))
3.索引
4.切片 与分割类似
5.长度len(msg)

运算符

1.算数运算符
地板除 // 除完以后取整数 3.2 // 2.1
% 取余
2.比较运算符
3.赋值运算
4.位运算符
&与 只有对应位都是1,才是1,否则均为0
| 或 只要有一个为1则为1
^ 异或 相同为0,不同为1
>>运算的各位结果右移 3>>2 二进制三右移两位
5.逻辑运算符
and、or、not
布尔值:
非零数字自带bool值都是True
非空字符串自带bool值都是True
6.成员运算符
判断一个元素是否是字符、数字、列表、元组、字典的成员 in not in
如果两个变量所附的值一样,如果长度较小,就会暂时指向同一块地址,如果比较长,就会重新创建一个。
7.身份运算符
id查看所在内存位置。
is 是

列表

names = [‘hsc‘,‘dt‘,‘lwq‘]
name1 = [‘qq‘,‘ww‘,‘ee‘]
#增
names.append(‘ls‘) #新增 ,这样默认将元素添加到最后,并返回空值
#插
names.insert(2,‘wt‘) # 2表示在2的索引之前插入
#删除的3种方法
names.remove("dt")
del names[2]
print(names.pop(3)) #删除并返回值,默认删除最后一个
#改
names[0] = ‘sb‘
#查
print(names[2])
print(names[0::2]) 查询的范围是0-最后,步长为2
print(names[-3:]) #取最后三个元素
names.index(‘dt‘) #取元素的下标
#first_index = names.index("wt")
#second_index = names[]

names.count(‘wt‘) #统计
names.clear() #清空列表
names.extend(‘name1‘) #扩展,用于两个列表的合并
print(names)
names.reverse() 反向排列列表
print(names)
names.sort() #按照asscii码顺序排列
print(names)
names.copy()

n3 = names.copy()
n4 = names
names = names.pop()
#这样的话,names修改的话,n4会改变,但是n3是copy的,所以不会改变。


print(name)
for i,ele in enumerate(name): #打印下标
print(i,ele)
enumerate用于遍历列表中的元素以及他们的下标。

设置输出颜色
格式:\\033[显示方式;前景色;背景色m
 
说明:
前景色            背景色           颜色
---------------------------------------
30                40              黑色
31                41              红色
32                42              绿色
33                43              黃色
34                44              蓝色
35                45              紫红色
36                46              青蓝色
37                47              白色
显示方式           意义
-------------------------
0                终端默认设置
1                高亮显示
4                使用下划线
5                闪烁
7                反白显示
8                不可见
 
例子:
\\033[1;31;40m    <!--1-高亮显示 31-前景色红色  40-背景色黑色-->
\\033[0m          <!--采用终端默认设置,即取消颜色设置-->   
技术分享
  • 备注:
    • \\033[1;31;40m: 代表接下来输出内容为:高亮显示,前景色为红色,背景色被黑色。
    • \\033[0m:代表接下来的输入内容为终端默认设置,也就是取消之前的颜色设置,如果没有这个,接下来的输出,都是上面的设置。
  • 例子:
password = raw_input(‘请输入用户密码,如果不设置,\\033[5;33;40m请回车!\\033[0m。默认密码为: NewPassWord2016)‘)
    • 我的设置是,闪烁、前景色为黄色,背景色为黑色。输出的效果是:”请回车“  这三个字一直在闪烁,且字体为黄色,背景色为黑色。






























































































以上是关于Python之路-Day2的主要内容,如果未能解决你的问题,请参考以下文章

python学习之路-day2

day2::(python-学习之路)-文件处理

python 学习之路-day2

Python学习之路day2

python之路:day2

Python之路,day2