python学习笔记(一)

PY交易之一

修改字符串大小

  • title( ):首字符大写
  • upper():全大写
  • lower():全小写

    添加空白

  • \t:制表符
  • \n:换行符
  • \n\t:换到下一行同时在开头添加一个制表符

    删除空白

    比如pythonpython" "(这里冒号没有意义,只是为了说明后面有一个空格。)
    删除空白就是在定义的变量后面加一个.rstrip()(删除右边的空格)和.lstrip()(删除左边的空格)
    比如在python中输
    name='python '
    name
    'python '
    name.rstrip()
    python
    但是由于这种操作是暂时的,所以需要把这个操作保存回变量中,在我看来也就是重新定义变量
    name=name.rstrip()

    数字

    加减乘除没什么区别,**表示乘方

    用str()函数避免类型错误

    比如

    age=23
    message=”I am”+age

他会弹出这样的错误

Traceback (most recent call last):
File “<pyshell#1>”, line 1, in
massage=”I am”+age
TypeError: must be str, not int
所以在输入的时候
age=23
message=”I am”+str(age)

Python中数字相除会有不同

比如3/2输出的是1但是3.0/2输出的是1.5,3/2.0或者3.0/2.0都是输出的1.5

注释

python中注释用(#)标识

列表

Python中用([])来标识列表,然后用逗号分隔中间的元素

列表+之前的小小综合运用一下

car=[‘tesla’,’bmw’,’trek’]
message=”my car is”+car[0].title()
输出的是
my car is tesla

修改、添加、删除元素

修改

就运用之前的列表进行修改就行

添加

运用一个函数,同样的在声明的变量后面加一个append()函数

插入元素

运用insert()函数

cars=[‘tesla’,’bmw’]
insert(0,2333)
print cars

删除

就是用del()函数,跟insert()函数差不多
如果只知道元素的值那还可以用remove()函数

排序

sort()

cars=[‘bmw’,’tesla’,’audi’]
cars.sort()
print(cars)
输出的是[‘audi’,’bmw’,’tesla’]

如果要倒叙的话就cars.sort(reverse=True)就行或者直接cars.reverse()

确定列表长度

len()

循环

我觉得这里需要注意的就是print缩进问题
不过现在python应该都能自动缩进。。。但是有些在循环以后不必进行缩进就要注意了。。。还有就是循环语句后面的冒号。。。

创建数值列表

打印数字range(),list()

for value in range(1,5):
    print(value)
1
2
3
4

这里只输出了1-4,不会输出5,而且还是要注意一下冒号问题。
list()函数会将range打印的数字输出为一个数字列表。

number=list(range(1,6))
print(number)
[1, 2, 3, 4, 5]

这里就没有冒号啦~

偶数even_number.py

even_number=list(range(2,11,2))
print(even_number)
[2, 4, 6, 8, 10]

函数range()从2开始不断+2,直到超过11.。。

乘方squares.py

squares=[]
for value in range(1,11):
    square=value**2
    squares.append(square)
print(squares)
[1, 4, 9, 16, 25, 36, 49, 64, 81]

创建一个空列表,然后用range()函数让python遍历1-10的值。在循环中去计算当前值的平方,然后再储存到变量square中,把计算的值附加到空列表的末尾。当然,还可以更简洁一点,就是不用中间的临时变量square,直接将计算的值附加到列表末尾。

squares=[]
for value in range(1,11):
    squares.append(value**2)         

对列表中的数字进行简单的统计计算

number=[1,2,3,4]       
min(number)
1
max(number)
4
sum(number)
10

不说了,自己体会嘻嘻嘻嘻嘻

元组

前面列表是可以修改数据的,那么元组就是不可修改的,但是我觉得这句话又有那么点矛盾,因为元组可以通过重新赋值来修改semmmmm

字典

字典是一系列的键-值对

遍历字典

遍历所有的键-值对
 user_0={
    'username':'mark',
    'first':'enrico',
    'last':'fermi',
    }
for key, value in user_0.items():
    print("\nkey:"+ key)
    print("value:"+ value)

key:username
value:mark

key:first
value:enrico

key:last
value:fermi
遍历字典中所有的键
user_0={
    'username':'mark',
    'first':'enrico',
    'last':'fermi',
    }
    for name in user_0.keys():
        print(name.title())


username
first
last

其实这里好像将for name in user_0.keys():替换为for name in user_0:输出是不会变的
这样的输出是无序的,要有顺序的输出的话加一个sorted()函数,变成for name in sorted(user_0.keys()):

遍历所有的值

for name in user_0.values():

嵌套

就是可以把一系列的字典存储在列表中。

用户输入和while循环

input()函数

这个函数就是让程序暂停运行,然后自己可以输入一些文本,然后python可以将其存储在一个变量中。

prompt="if you tell us who you are, we can personalize the messages you see."
prompt+="\nwhat is your first name?"

name=input(prompt)
print("\nhello," + name + "!")
--------------------------------
what is your first name?wifi

hello,wifi!

运行前面的代码其实只会出现what is your first name?,在后面随便输个什么玩意儿就会出现hello,****

int()函数

先来看一段代码吧。。。

age = input("how old are you?")
how old are you?18
age
'18'

这里18的两边有两个单引号是字符串,如果我要进行比较的话是无法比较的。

how old are you?18
age>=20
Traceback (most recent call last):
  File "<pyshell#2>", line 1, in <module>
    age>=20
TypeError: '>=' not supported between instances of 'str' and 'int'

就要用上int()函数了。

how old are you?18
age=int(age)
age>=29
False

求模运算符(%)

也就是一个求余数的工具。

number=input("enter a number,and I will tell you if it is even or odd:")
number=int(number)

if number % 2==0:
    print("\nThe number" + str(number)+"is even.")
else:
    print("\nThe number"+str(number)+"is odd.")
--------------------------------
enter a number,and I will tell you if it is even or odd:5

The number5is odd.

while循环中的选择退出

感觉whileif...else稍微还是有那么点点不同,while是会一直循环一直循环一直循环…….直到满足停止的条件为止。。。其他的emmmm感觉基本是差不多的。。。。。

prompt="\nTell me something,and I will repeat it back to you:"
prompt+="\nEnter 'quit' to end the program."
message=""
while message != 'quit':
    message=input(prompt)
    print(message)

-------------------------------
Tell me something,and I will repeat it back to you:
Enter 'quit' to end the program.5555
5555

Tell me something,and I will repeat it back to you:
Enter 'quit' to end the program.66
66

Tell me something,and I will repeat it back to you:
Enter 'quit' to end the program.54843
54843

Tell me something,and I will repeat it back to you:
Enter 'quit' to end the program.dhioashdas
dhioashdas

Tell me something,and I will repeat it back to you:
Enter 'quit' to end the program.quit
quit

while中使用标志

标志是在要求很多条件都满足才能继续的运行程序中,可以定义一个变量,用于判断整个程序是否处于活动状态。下面我将标志命名为active,然后将这个变量设置成了True,让程序处于活动状态,可以看到下面部分代码最后一部分,如果输入qiut的话就直接停止,跟上面还是有点不同的

prompt="\nTell me something,and I will repeat it back to you:"
prompt+="\nEnter 'quit' to end the program."

active=True
while active:
    message=input(prompt)

    if message =='quit':
        active=False
    else:
        print(message)
--------------------------------
Tell me something,and I will repeat it back to you:
Enter 'quit' to end the program.5
5

Tell me something,and I will repeat it back to you:
Enter 'quit' to end the program.quit

用continu

continu可以回到循环开头,并且根据条件测试结果决定是否据需执行循环。。最简单的就是可以输出一串奇数

current_number=0
while current_number<10:
    current_number+=1
    if current_number % 2 ==0:
        continue
    print(current_number)

--------------------------------
1
3
5
7
9

用循环来处理列表和字典

在列表间移动元素

#首先,创建一个待验证用户列表
# 和一个用于储存已验证用户的空列表
unconfirmed_users=['A','B','C']
confirmed_users=[]

#验证每个用户,直到没有未验证的用户为止
# 将每个验证了的列表都移到已经验证的用户列表中
while unconfirmed_users:
    current_user=unconfirmed_users.pop()
    print(current_user  +   ",you are not pass.")
    confirmed_users.append(current_user)

#显示所有已经验证过的用户
print("\nThe follwing users have been confirmed:")
for confirmed_user in confirmed_users:
    print(confirmed_user.title())
-------
C,you are not pass.
B,you are not pass.
A,you are not pass.

The follwing users have been confirmed:
C
B
A

首先创建一个未验证用户列表,有A,B,C3个用户,然后在创建一个空列表,while循环会不断的循环,知道列表空了,pop()函数以每次一个的方式从类别末尾删除未验证的用户。


   转载规则


《python学习笔记(一)》 Gsuhy 采用 知识共享署名 4.0 国际许可协议 进行许可。
  目录